如何在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.

+0

当你运行你的调试什么行是错误? – Tom

+0

'profile.Games'为NULL。因此,为什么会出现异常 – demo

+0

因为'游戏'是'null'(你还没有初始化它,但是它需要'List ' –

它看起来像Gamesnull,这样做:

profile.Games = new[] { gameId }; 

然后未来的增加将需要您调整数组的大小。因此,我建议切换到使用List<int>而不是数组,因为您可以像预期的那样使用Add