我有这门课
public class User
{
private string _name;
public string UserName { get; set; }
public List<int> ControlNumber { get; set; }
public User (string username)
{
_name = username;
}
public User()
{
}
}
这个函数填充了类。
User UserClass = new User(e.Key); //e.Key = user's name
public static void FillUserListClass(DataTable dt, ref UserClass)
{
try
{
for (int ctr = 0; ctr < dt.Rows.Count; ctr++)
{
var row = dt.Rows[ctr];
var userName = row["User"].ToString();
if (UserList.ContainsKey(userName))
{
UserList[userName].Add(Convert.ToInt32(row["ControlNumber"]));
}
else
{
_user.UserName = row["User"].ToString();
_user.ControlNumber.Add(Convert.ToInt32(row["ControlNumber"]));
}
//print out
Console.WriteLine("UserList Class: ");
Console.WriteLine(_user.UserName);
Console.WriteLine(_user.ControlNumber);
}
}
finally
{
//conn.Close();
}
}
然而,在_user.ControlNumber.Add(Convert.ToInt32(row["ControlNumber"]));
行我得到“对象引用未设置到对象的实例。”错误。有什么帮助吗?
我想做的是为每个用户创建一个包含用户控制号码的类。然后我希望将所有这些类放入字典中以供参考。
您需要在构造函数中初始化列表:
public User (string username) : this()
{
_name = username;
}
public User()
{
this.ControlNumber = new List<int>();
}
否则,ControlNumber
将具有默认值 null。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)