我遇到过一个案例,我们有两次列映射(我们不知道......),现在更新正在抛出“参数+1不存在错误”。
有没有合适的方法可以实现以下映射?
(请注意,这是一个继承的数据库...)
References(x => x.Matter).Columns(new[] { "c_client", "c_matter" }).NotFound.Ignore();
References(x => x.Client).Column("c_client");
答案 0 :(得分:3)
您可以选择将客户端列标记为只读。
References(x => x.Matter).Columns(new[] { "c_client", "c_matter" }).NotFound.Ignore();
References(x => x.Client).Column("c_client").ReadOnly();
这应该让NHiberante不会尝试更新它
答案 1 :(得分:1)
这是无效的映射。您不能两次使用同一列。
我的建议是您将c_matter
和c_client
映射为标量属性,并使用查询来检索相应的事项和客户。