C# 4.0 如何为名称在字符串中的属性赋值?

C# 4.0 如何为名称在字符串中的属性赋值?,c#-4.0,C# 4.0,我想给类的对象的属性赋值。我使用GetProperties()获取了属性名列表 我已经创建了一个对象 Import_Column myobj=new Import_Column(); 我想做一些像 myobj.props[2]=value; //giving me error 我怎么做?是否有其他方法?您需要将值设置为当前对象实例的属性 string propertyName = "TheNameOfThePropertyToSet"; myobj.GetType()

我想给类的对象的属性赋值。我使用
GetProperties()获取了属性名列表

我已经创建了一个对象

      Import_Column myobj=new Import_Column();
我想做一些像

      myobj.props[2]=value; //giving me error

我怎么做?是否有其他方法?

您需要将值设置为当前对象实例的属性

string propertyName = "TheNameOfThePropertyToSet";
myobj.GetType().GetProperty(propertyName).SetValue(myobj, value, null);
或者在你的情况下,你可以使用

myobj.GetType().GetProperty(props[2].Name).SetValue(myobj, value, null);
试试这个
myobj.GetType().GetProperty(props[2].Name).SetValue(myobj, value, null);