日期:2014-05-17  浏览次数:20931 次

如何反射类库的类文件中的变量并赋值
如何反射类库的类文件中的变量并赋值
现在这样写报错:model.fi = stArr1[1];  ConfigModel不具有fi的定义。

Models.Payment payment = PaymentManager.GetPaymentByPayId(pid);
        if (payment != null)
        {
            SortedDictionary<string, string> sd = new SortedDictionary<string, string>();
            Com.ConfigModel model = new Com.ConfigModel();
            if (!payment.PayConfig.Equals(string.Empty))
            {
                string[] stArr = payment.PayConfig.Split(',');
                Type type = Com.ConfigModel.GetType();
                foreach (string str in stArr)
                {
                    string[] stArr1 = str.Split(':');
                    FieldInfo fi = type.GetField(stArr1[0]); //stArr1[0]是ConfigModel中的变量名
                    model.fi = stArr1[1]; //stArr1[1]是要赋值
             
                }
            }

------解决方案--------------------
http://msdn.microsoft.com/zh-cn/library/system.reflection.fieldinfo.setvalue(v=vs.100).aspx