首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

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

2012-04-10 
请教一个转换泛型的问题有一个类public class User{private int _userId1private string _loginNamead

请教一个转换泛型的问题
有一个类
  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;} 

热点排行