请教一个转换泛型的问题
有一个类
public class User
{
private int _userId=1;
private string _loginName="admin";
private string _userName="管理员";
private string _password="123";
}
如何转换为Dictionary<string,object>,其中键/值对和类相同
[解决办法]
[解决办法]
这个你可以把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;}