Bitte kann jemand bei folgendem Fehler helfen:
Inkonsistente Zugänglichkeit: Der Eigenschaftstyp 'Test.Delivery' ist weniger zugänglich als die Eigenschaft 'Test.Form1.thelivery'.
private Delivery thedelivery;
public Delivery thedelivery
{
get { return thedelivery; }
set { thedelivery = value; }
}
Ich kann das Programm aufgrund der Fehlermeldung der Inkonsistenz nicht ausführen.
Hier ist meine Lieferklasse:
namespace Test
{
class Delivery
{
private string name;
private string address;
private DateTime arrivalTime;
public string Name
{
get { return name; }
set { name = value; }
}
public string Address
{
get { return address; }
set { address = value; }
}
public DateTime ArrivlaTime
{
get { return arrivalTime; }
set { arrivalTime = value; }
}
public string ToString()
{
{ return name + address + arrivalTime.ToString(); }
}
}
}
c#
properties
David Bukera
quelle
quelle
public
von meiner Klassendefinition zu entfernen .Ihre Klasse
Delivery
hat keinen Zugriffsmodifikator, was bedeutet, dass sie standardmäßig verwendet wirdinternal
. Wenn Sie dann versuchen, eine Eigenschaft dieses Typs als verfügbar zu machen,public
funktioniert dies nicht. Ihr Typ (Klasse) muss den gleichen oder einen höheren Zugriff haben als Ihr Eigentum.Weitere Informationen zu Zugriffsmodifikatoren: http://msdn.microsoft.com/en-us/library/ms173121.aspx
quelle
Ihre
Delivery
Klasse ist intern (die Standardsichtbarkeit für Klassen), die Eigenschaft (und vermutlich die enthaltende Klasse) ist jedoch öffentlich, sodass auf die Eigenschaft besser zugegriffen werden kann als auf dieDelivery
Klasse. Sie müssen entwederDelivery
die Sichtbarkeit derthelivery
Eigenschaft veröffentlichen oder einschränken .quelle