如何在C#.NET MVC 5中将新整数推送到数组中?
问题描述:
我来自Javascript背景,并决定学习一些C#.NET MVC5。如何在C#.NET MVC 5中将新整数推送到数组中?
请原谅我,如果我使用不正确的术语。 我想要做的是将从本地SQL数据库查询的ID推入(添加)到我的模型中并存储它。
下面是我在我的控制器:
using (var db = new GMDBContext())
{
var gameID = db.Games.Where(x => x.ID == 1).Select(x => x.ID).FirstOrDefault();
var profile = db.Profiles.Create();
profile.Username = model.Email;
profile.Email = model.Email;
profile.Games.Add(gameID); //This causes an error
db.Profiles.Add(profile);
db.SaveChanges();
}
,我的模式是:
public class Profile
{
public int ID { get; set; }
public string Username { get; set; }
public string Email { get; set; }
public int[] Games { get; set; }
}
错误:
Object reference not set to an instance of an object.
答
它看起来像Games
是null
,这样做:
profile.Games = new[] { gameId };
然后未来的增加将需要您调整数组的大小。因此,我建议切换到使用List<int>
而不是数组,因为您可以像预期的那样使用Add
。
当你运行你的调试什么行是错误? – Tom
'profile.Games'为NULL。因此,为什么会出现异常 – demo
因为'游戏'是'null'(你还没有初始化它,但是它需要'List' –