首页 > 学院 > 开发设计 > 正文

相同结构的两个类赋值

2019-11-08 01:26:18
字体:
来源:转载
供稿:网友
 public static D Mapper<D, S>(S s)        {            D d = Activator.CreateInstance<D>();            try            {                var sType = s.GetType();                var dType = typeof(D);                foreach (PRopertyInfo sP in sType.GetProperties())                {                    foreach (PropertyInfo dP in dType.GetProperties())                    {                        if (dP.Name == sP.Name)                        {                            dP.SetValue(d, sP.GetValue(s, null), null);                            break;                        }                    }                }            }            catch (Exception ex)            {            }            return d;        }

使用方法:

                WORKFLOWTASK w1 = new WORKFLOWTASK();                ServiceReference2.WORKFLOWTASK w2 = lst1[i];                w1 = ipMSService.Mapper<WORKFLOWTASK, ServiceReference2.WORKFLOWTASK>(w2);                lst.Add(w1);主要是将两个具有相同结构的类进行一一对应赋值。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表