1
在EF 6中,如何指定实体的属性是外键引用,以便在被引用的实体是父对象时不能删除另一个实体?如何使用流利的api在EF中设置外键6
这是我的类:
public class User
{
[Key]
public int id { get; set; }
public int parentId { get; set; }
[ForeignKey("parentId")]
public virtual User user { get; set; }
}
在上述类中,parentId
是到另一个User
的引用。
这里是我当前的代码:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<User>().HasKey(x => x.id);
modelBuilder.Entity<User>().HasOptional<User>(x => x.user);
base.OnModelCreating(modelBuilder);
}
我收到以下错误:
One or more validation errors were detected during model generation:
DataService.Context.User_user: : Multiplicity conflicts with the referential constraint in Role 'User_user_Target' in relationship 'User_user'. Because all of the properties in the Dependent Role are non-nullable, multiplicity of the Principal Role must be '1'.
我收到以下错误:'DataService.Models.User'不包含'User'的定义,并且没有找到接受'DataService.Models.User'类型的第一个参数的扩展方法'User' – user3736648
查看答案中的更新 –
虚拟用户是否根本改变数据库结构? – user3736648