Я использую библиотеку, которая работает через отражение, чтобы делать много умных вещей с объектами со свойствами. Это работает как с определенными классами, так и с динамическими классами. Мне нужно сделать еще один шаг вперед и сделать что-то в этом направлении:
Код: Выделить всё
public static object GetDynamicObject(Dictionary properties) {
var myObject = new object();
foreach (var property in properties) {
//This next line obviously doesn't work...
myObject.AddProperty(property.Key,property.Value);
}
return myObject;
}
public void Main() {
var properties = new Dictionary();
properties.Add("Property1",aCustomClassInstance);
properties.Add("Property2","TestString2");
var myObject = GetDynamicObject(properties);
//Then use them like this (or rather the plug in uses them through reflection)
var customClass = myObject.Property1;
var myString = myObject.Property2;
}
Подробнее здесь: https://stackoverflow.com/questions/158 ... at-runtime