我刚刚开始使用逆向工程师代码优先,我遇到了一个无法找到答案的阻止程序。
我已经映射了三个在数据库端没有设置任何关系的表。
- 错误- 列是 ErrorID、ErrorName 等。
- 用户- 列是用户 ID、用户名等...
- ErrorUsers - 列是 ErrorUsersID、ErrorID、UserID
这个想法是一个错误可能有一个或多个用户负责。我希望能够运行查询,这些查询将返回所有相应用户的所有错误。
在我的 Errors 类中,我添加了一个名为:
public virtual ErrorUser ErrorUsers { get; set; }
在我的 ErrorMap.cs 中,我添加了
this.HasRequired(e => e.ErrorUsers)
.WithMany()
.HasForeignKey(e => e.ErrorID);
但是,当我运行查询以返回所有相应用户的所有错误时,我收到以下错误:
System.Data.Entity.ModelConfiguration.ModelValidationException was unhandled by user code
Message=One or more validation errors were detected during model generation:
System.Data.Edm.EdmAssociationEnd: : Multiplicity is not valid in Role 'Error_ErrorUsers_Source' in relationship 'Error_ErrorUsers'. Because the Dependent Role refers to the key properties, the upper bound of the multiplicity of the Dependent Role must be ?1?.
Source=EntityFramework
在过去的几个小时里,我一直在寻找答案,我能找到的唯一代码示例是那些使用我试图避免的视觉 .edmx 样式的代码示例。
有人可以帮我吗?