【发布时间】:2014-09-23 16:38:20
【问题描述】:
首先,我遵循此链接中的示例:http://blog.bennymichielsen.be/2011/06/02/entity-framework-4-1-one-to-one-mapping/,这看起来很可靠,但是当我尝试创建脚手架时,它崩溃了,给我没有导航键的错误。
这是我的代码:
负责班级:
public class CodigoAgrupadorCuentas
{
public CodigoAgrupadorCuentas()
{
CatalogoDeCuentas = new CatalogoDeCuentas();
}
public int CodigoAgrupadorCuentasID { get; set; }
public string description { get; set; }
public virtual CatalogoDeCuentas CatalogoDeCuentas { get; set; }
}
依赖类:
public class CatalogoDeCuentas
{
[ForeignKey("CodigoAgrupadorCuentasID")]
public int CodigoAgrupadorCuentasID { get; set; }
public string text { get; set; }
}
DbContext 类:
public class PolizasDBContext: DbContext
{
public PolizasDBContext()
: base("PolizasDBContext")
{
}
public DbSet<CatalogoDeCuentas> TablaCatalogoDeCuentas { get; set; }
public DbSet<CodigoAgrupadorCuentas> TablaCodigoAgrupCuentas { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
modelBuilder.Entity<CodigoAgrupadorCuentas>()
.HasRequired(x => x.CatalogoDeCuentas)
.WithRequiredPrincipal();
base.OnModelCreating(modelBuilder);
}
}
最后,这是我尝试搭建 CatalogoDeCuentas 时得到的错误图像:
总而言之,我想要的是能够创建一个一对一的关系,我可以在其中单独插入 COdigoAgrupadorCuentas,但不能插入 CatalogoDeCuentas。
我已经被这个简单的问题困扰了几个小时,感谢任何帮助。
【问题讨论】:
标签: c# entity-framework ef-code-first one-to-one table-relationships