2
基本上我想转换来自:如何键值对的列表转换为动态对象
keys[3] = {"id", "name", "comment"}
values[3] = {"1", "Ackerman", "superuser"}
到:
new { id: "1", name: "Ackerman", comment: "superuser"}
我怎样才能做到这一点?
基本上我想转换来自:如何键值对的列表转换为动态对象
keys[3] = {"id", "name", "comment"}
values[3] = {"1", "Ackerman", "superuser"}
到:
new { id: "1", name: "Ackerman", comment: "superuser"}
我怎样才能做到这一点?
我想笏你想要的是在Expando对象,它允许添加dinamically属性:
keys[3] = {"id", "name", "comment"}
values[3] = {1, "Ackerman", "superuser"}
dynamic item = new ExpandoObject();
var dItem = item as IDictionary<String, object>;
for(int buc = 0; buc < keys.Length; buc++)
dItem.Add(keys[buc], values[buc]);
之后,你可以打电话给你的对象,你会与任何其他事情:
var id = item.id;
var comment = item.comment;
item.name = "new name";
这是不是“动态对象”;这是一个“匿名类型”。你的意思是? –
@MarcGravell其实或者很好。我只是不想,也不能事先明确定义类,因为列表是动态创建的。 – hurtchin
k;现在 - 这里有什么“键”和“值”?因为它不明显。这是无效的C#语法...他们是数组吗?如果是这样,什么:'string [] [] keys'和'object [] [] values'? –