读书人

请问一个转换泛型的有关问题

发布时间: 2012-04-10 21:03:56 作者: rapoo

请教一个转换泛型的问题
有一个类
public class User
{
private int _userId=1;
private string _loginName="admin";
private string _userName="管理员";
private string _password="123";
}
如何转换为Dictionary<string,object>,其中键/值对和类相同

[解决办法]

探讨

我的错,没说清楚
public class User
{
private int _userId=1;
private string _loginName="admin";
private string _userName="管理员";
private string _password="123";

public int UserI……

[解决办法]
这个你可以把userid做为key,如果3楼那样的定义


如果你是把一个user对象的属性全部“序列化”到Dictionary<string,object>,那个需要用反射了

或者你就干脆点直接在user对象上使用 this[string propertyName] 定义一个索引方法直接访问
[解决办法]
为User类添加一个ToDictionary方法,将自身内容转换到一个字典中。
C# code
public Dictionary<string, object> ToDictionary(){  Dictionary<string, object> dict = new Dictionary<string, object>();  PropertyInfo[] properties = this.GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance);  foreach (PropertyInfo pi in properties)  {    string name = pi.Name;    object value = pi.GetValue(this, null);    dict.Add(name, value);  }  return dict;} 

读书人网 >C#

热点推荐