我正在创建一个带有子菜单的菜单结构。TopMenu-Items 的 ParentID 应为 NULL
我的模型:
public Menu()
{
this.active = true;
this.publishStart = DateTime.Now;
this.seq = 1;
}
public string Name { get; set; }
public string Name_Sub { get; set; }
public string Url { get; set; }
public int? Level { get; set; }
public int? ParentID { get; set; }
public string Icon { get; set; }
public int? Status { get; set; }
public virtual Menu Parent { get; set; }
public virtual ICollection<Menu> ChildMenus { get; set; }
和
modelBuilder.Entity<Menu>().HasOptional(s => s.Parent)
.WithMany(s => s.ChildMenus).HasForeignKey(s => s.ParentID);
通过 JSon 更新顶级菜单(ParentID = null)时,我的 ModelState 无效,因为 ParentID = null
我可以使用顶级的 ParentID = 0 来解决它,但我想知道 Null 失败的原因,尽管我在模型中将其设为 NULLABLE。