给一个对象属性赋值可以通过PropertyInfo.SetValue()方式进行赋值,但要注意值的类型要与属性保持一致。
创建对象实例
1>
var obj = Assembly.Load("AssemblyName").CreateInstance("AssemblyName"+"ClassFullName");var obj = Activator.CreateInstance(ClassType);var property = obj.GetType().GetProperty("PropertyName");//此时可以使用GetProperty获取属性数组,循环进行赋值,这里主要讲解类型问题。int value=500;property.SetValue(obj,value,null);string value="500";property.SetValue(obj,int.TryParse(value),null);//类型转换。object value="500";property.SetValue(obj,Convert.ChangeType(value,property.PropertyType),null);//类型转换。原文:http://www.cnblogs.com/guohu/p/4496510.html