gpt4 book ai didi

asp.net-mvc - Entity Framework 代码优先多对多 NullReference

转载 作者:行者123 更新时间:2023-12-02 07:40:55 26 4
gpt4 key购买 nike

我不断在 su.Companies.Add(co) 上收到 NullReferenceException;线。我认为按照我的模型定义方式它应该可以工作。自动完成,听起来像一个新手,完成这个就好了。我显然是 EntityFramework 的新手。

帮忙吗?

using (var db = new TicketdocketEntities())
{
var su = new SiteUser { UserName = model.UserName };
db.SiteUser.Add(su);
var co = new Company { Name = "Hello" };
su.Companies.Add(co);
db.SaveChanges();
}

模型

public class Company
{
[Key]
public int CompanyId { get; set; }
public string Name { get; set; }

public virtual ICollection<SiteUser> SiteUsers { get; set; }
}

public class SiteUser
{
[Key]
public int SiteUserID { get; set; }
public string UserName { get; set; }

public virtual ICollection<Company> Companies { get; set; }
}

public class TicketdocketEntities : DbContext
{
public DbSet<Company> Companies { get; set; }
public DbSet<SiteUser> SiteUser { get; set; }
}

最佳答案

您仍然需要使用实际列表初始化该属性:

public class SiteUser 
{
public SiteUser()
{
Companies = new List<Company>();
}

[Key]
public int SiteUserID { get; set; }
public string UserName { get; set; }

public virtual ICollection<Company> Companies { get; set; }
}

关于asp.net-mvc - Entity Framework 代码优先多对多 NullReference,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11218068/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com