0
我有以下型号:可选可选的依赖关系EF codefirst
User
id
Document Doc1
Document Doc2
Document
Id
Data
Name
这是在实体框架是这样建模:
modelBuilder.Entity<Document>()
.HasOptional(e => e.User)
.WithOptionalPrincipal(e => e.Doc1);
modelBuilder.Entity<Document>()
.HasOptional(e => e.User)
.WithOptionalPrincipal(e => e.Doc2);
的想法是,用户不需要有这些2文件。 然而,当我试图删除文件与下面的代码:
using (var ctx = new DealersContext("Db"))
{
var doc = ctx.Documents.FirstOrDefault(d => d.Id == docId);
if (doc != null)
{
ctx.Documents.Remove(doc);
ctx.SaveChanges();
}
}
我得到以下错误: DELETE语句冲突与基准约束“FK_dbo.DealersUsers_dbo.Documents_IdDocument_Id”。冲突发生在数据库“DealersDb”,表“dbo.DealersUsers”,列'IdDocument_Id'。这怎么解决?
你是对的,完全忘了这一点 – Elena 2013-05-09 09:50:25