当前位置 : 主页 > 网络编程 > net编程 >

.NET通过字典给类赋值实现代码

来源:互联网 收集:自由互联 发布时间:2022-04-19
废话不多说了,直接贴代码了,具体代码如下所述: /// summary/// /// /summary/// typeparam name="T"/typeparam/// param name="origin"源数据/param/// param name="target"对象数据/param/// param name="dict"变量名对应

废话不多说了,直接贴代码了,具体代码如下所述:

/// <summary>
/// 
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="origin">源数据</param>
/// <param name="target">对象数据</param>
/// <param name="dict">变量名对应字典</param>
public static void CopyTo<T>(this object origin, T target,Dictionary<string,string> dict)where T :class,new()
{
PropertyInfo[] props = target.GetType().GetProperties();
foreach (PropertyInfo info in props)
{
var variable = dict.FirstOrDefault(m => m.Value == info.Name);
if (variable.Key!=null)
{
string variableName = variable.Key;
string chineseName = variable.Value;
var propertyValue =
origin.GetType()
.GetProperty(variableName)
.GetValue(origin, null);
if (propertyValue != null)
{
if (propertyValue.GetType().IsClass)
{
}
target.GetType()
.InvokeMember(chineseName, BindingFlags.SetProperty, null, target,
new object[] { propertyValue });
}
}
}
}

以上所述是小编给大家介绍的.NET通过字典给类赋值实现代码,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的,在此也非常感谢大家对易盾网络网站的支持!

上一篇:深入浅析WinForm 进程、线程及区别介绍
下一篇:没有了
网友评论