model具有以下属性:name1,name2,name3, ...能不能利用类似
for(int i=1;i<=3;i++)
{
  model.("name"+i)=i;
}
的方式赋值 ?

解决方案 »

  1.   

    Class1 model = new Class1();            System.Reflection.PropertyInfo pi = null;
                for (int i = 1; i <= 4; i++)
                {
                    pi = model.GetType().GetProperty("Name" + i);
                    if (pi != null)
                        pi.SetValue(model, i.ToString(), null);
                }
                MessageBox.Show(model.Name1);
                MessageBox.Show(model.Name2);
                MessageBox.Show(model.Name3);
                MessageBox.Show(model.Name4);