C# 如何在匿名中设置属性?

C# 如何在匿名中设置属性?,c#,code-behind,anonymous-types,C#,Code Behind,Anonymous Types,您好,我可以生成此类型: var v = new { a = 100, b = 200, c = 300}; 它的哪些属性是动态的? 我的意思是,我要创建的属性名称(a、b、c等)不是静态的,而是在变量本身中: var proppertyName1 = "a"; var proppertyName2 = "b"; var proppertyName3 = "c"; var v = new { proppertyName1 = 100, proppertyName2 = 200, propp

您好,我可以生成此类型:

var v = new { a = 100, b = 200, c = 300};
它的哪些属性是动态的? 我的意思是,我要创建的属性名称(a、b、c等)不是静态的,而是在变量本身中:

var proppertyName1 = "a"; 
var proppertyName2 = "b"; 
var proppertyName3 = "c";
var v = new { proppertyName1 = 100, proppertyName2 = 200, proppertyName3 = 300}

您可以使用
ExpandoObject
和转换为
IDictionary
来实现这一点,如果您确实需要:

dynamic expando = new ExpandoObject();
var propertyA = "a";
(expando as IDictionary<string, object>)[propertyA] = "some value";

Console.WriteLine(expando.a);
dynamic expando=new ExpandoObject();
var propertyA=“a”;
(expando作为IDictionary)[propertyA]=“一些值”;
控制台写入线(expando.a);

您想要的是ExpandoObject使用
v
实例要做什么?