10
我想在c#中使用類似javascript的prototype屬性。
這個想法是像在javascript中一樣擴展一個類的實例。
我發現的最接近的事情是使用ExpandoObject,但不能用現有對象初始化它。
另一個問題是您可以從ExpandoObject中取回原始對象。如何使用動態在c#4.0中擴展現有對象
這是我想要做的
var originalObject = new Person();
originalObject.name = "Will";
var extendedObject = new ExpandoObject();
extendedObject.lastName = "Smith";
//do something
originalObject = (Person) extendedObject;
這聽起來像你想混合靜態和動態類型的引用。你不能那樣做。 –
相關https://weblog.west-wind.com/posts/2012/Feb/08/Creating-a-dynamic-extensible-C-Expando-Object –