Compilerfehler CS0703

Inkonsistenter Zugriff: Einschränkungstyp "Bezeichner" ist weniger zugreifbar als "Bezeichner".

Eine Einschränkung kann nicht erzwingen, dass der generische Parameter weniger zugreifbar als die generische Klasse selbst ist.Im folgenden Beispiel, in dem die generische Klasse C<T> als public deklariert ist, soll von der Einschränkung erzwungen werden, dass T eine interne Schnittstelle implementiert.Selbst wenn dies zulässig wäre, wären nur Clients mit internem Zugriff in der Lage, den Parameter für die Klasse zu erstellen. Somit könnten nur Clients mit internem Zugriff die Klasse verwenden.

Beheben Sie diesen Fehler, indem Sie sicherstelllen, dass die Zugriffsebene der generischen Klasse nicht weniger eingeschränkt ist als die Klassen oder Schnittstellen, die innerhalb der Grenzen enthalten sind.

Im folgenden Beispiel wird der Fehler CS0703 generiert.

// CS0703.cs
internal interface I {}
public class C<T> where T : I  // CS0703 – I is internal; C<T> is public
{
}