Unter http://msdn.microsoft.com/en-us/library/dd468057.aspx Ich habe gelesen, dass alle Navigationseigenschaften, für die ich einen Proxy für die Änderungsverfolgung haben möchte, folgendermaßen aussehen müssen public
y virtual
. Soweit ich weiß, erstellt die CLR dynamisch Unterklassen meiner POCOs und implementiert die Eigenschaften neu, um das gewünschte Verhalten bereitzustellen.
Dazu muss die Immobilie nach meinem Verständnis virtual
und dass es eine protected
oder höhere Zugänglichkeit. Wenn ich diese jedoch aus Gründen der Bequemlichkeit innerhalb des Assemblers verwenden möchte, sie aber nicht offenlegen will, ziehe ich es vor, dass sie nicht public
. Das führt mich zu zwei Fragen.
-
(für mein Verständnis dessen, was vor sich geht), warum erfordert die Laufzeit die Eigenschaften zu sein
public
stattprotected
ointernal
? -
(für meine tatsächliche Situation) gibt es irgendwelche Workarounds, um die Navigationseigenschaft auszublenden, aber immer noch die Änderung Tracking-Verhalten haben?