0

我有一个带有多个表的多客户端数据库(多租户)。其中两个表是tblEmployeestblTitles。现在我有一个关系 from tblEmployees.empTitleto tblTitles.ttlID

到目前为止一切正常。但现在我必须为多个客户/租户申请。所以我添加了这些字段tblEmployees.empClient并将tblTitles.ttlClient它们包含在关联中。

这适用于阅读和设置人员标题。但是,如果我尝试删除标题(将其设置为NULL),SQL to Linq 会尝试同时修改tblEmployees.empTitletblEmployees.empClientwith 是不允许的,因为tblEmployees.empClient它是主键的一部分。所以我收到以下错误:

InvalidOperationException:
An attempt was made to remove a relationship between a AppTitle and a AppEmployee.
However, one of the relationship's foreign keys (AppEmployee.clientID, AppEmployee.titleID) cannot be set to null.

我怎样才能告诉 SQL 到 Linq 只修改字段tblEmployees.empTitle???

4

1 回答 1

0

我只是像其他人一样解决了这个问题:我让 LinqToSQL 认为,clientID 不是主键的一部分,并将其从关联中删除。但是我没有修改数据库,所以数据库仍然强制使用相同客户端/租户的标题。

于 2012-04-12T06:31:42.993 回答