我有以下代码:
BudgetLineItem actualLi = new BudgetLineItem();
actualLi.YearId = be.lu_FiscalYear.Where(t => t.Year == actualYear).Select(t => t.Id).First();
actualLi.TypeId = be.lu_Type.Where(t => t.Name == "Actual").Select(t => t.id).First();
actualLi.DeptId = be.lu_Department.Where(t => t.Name == DeptName).Select(t => t.ID).First();
actualLi.LineItemId = be.lu_LineItem.Where(t => t.Name == revenueType).Select(t => t.id).First();
actualLi.Amount = actualAmount;
be.AddToBudgetLineItems(actualLi);
be.SaveChanges();
它创建了一个我想要在数据库中插入的对象。但是当我尝试保存这条记录时,我得到了错误:
“xxxx”中的实体参与“xxxx”关系。找到 0 个相关的“xxxx”。1 '' 是预期的。
我的表与错误引用BudgetLineItem
的表有外键关系。lu_Department
我发现这个问题似乎提供了一个解决方案,但对于我想要做的事情来说似乎过于复杂。
我的最佳选择是我链接到的问题中提供的解决方案吗?如果是这样,为什么 EF 让这变得如此复杂?