Ist es möglich, ein übergeordnetes Element in einer untergeordneten Klasse zugreifen ...C# Verschachtelte Klasse Zugriff Elternteil Mitglied
class MainClass {
class A { Whatever }
class B {
List<A> SubSetList;
public void AddNewItem(A NewItem) {
Check MasterListHere ????
}
}
List<A> MasterList;
}
Also ... meine Hauptklasse eine Masterliste hat. Es wird auch eine Menge von Instanzen von B haben. In jedem Fall von B möchte ich neue A's zu dem bestimmten B hinzufügen, aber nur wenn sie in der Hauptliste existieren. Ich spielte mit der MasterList statische und es funktioniert ... bis ich mehr als eine Instanz von MainClass habe ... die ich haben werde.
Ich könnte einen Verweis auf MasterList zu jeder Instanz von B übergeben, aber ich werde schließlich mehrere dieser "MasterLists" haben und ich möchte nicht viele Referenzen übergeben müssen, wenn ich nicht muss.
Ich dachte das auch ... Gibt es einen Zugriffsmodifizierer, der den Zugriff nur auf verschachtelte Klassen beschränkt? – Rob
Nun, eine Möglichkeit besteht darin, alle diese Datenstrukturen in ihre eigene Assembly zu stellen und intern statt privat zu verwenden. –
Ich habe das berücksichtigt, aber es verhindert nicht, dass andere Klassen auf diese Liste zugreifen. Es ist nicht superkritisch, aber ich möchte, dass es so sauber wie möglich ist ... – Rob