下面的代码应该怎么做?在此代码中添加包含表的目的是什么,如果它是对PersonId相关的JobType进行级联删除,还是只删除具有指定PersonId的Person?
db.tblPerson.Remove(db.tblPerson.Include("tblJobType").FirstOrDefault(c => c.PersonId== PersonId));
答案 0 :(得分:2)
在这种情况下,.Include是多余的或非常糟糕的设计。
多余:
糟糕的设计:
<强>结论强>
发布的代码只是删除具有指定PersonId的Person。 .Include可能只是一个复制粘贴错误,在这里没有任何影响。如上所述,这不会导致CascadeDelete,这是由不同的设置决定的。但是,您应该注意.Include的副作用。