0

所以我试图弄清楚如何处理重复,我想到的一种方法是将类型重新指定为相同的类型

例如

public class Employee
{
    public int Id {get;set;}
    public string Name {get;set;}
    public int? RemappingId {get;set;}

    public virtual Employee Remapping {get;set;}
}

所以,基本上,任何人都可以注册,但是如果有人不小心保存了重复的员工,我无法在这部分进行任何验证,我计划有一些管理页面来将重复的员工映射到喜欢“主要”员工。

但我收到了这个错误:

无法确定类型之间关联的主体端必须使用流式 API 或数据注释显式配置此关联的主体端

所以我不确定这是否是处理重复的正确方法,如果不是,请给我指出正确的方向。如果这是可以接受的,你有没有机会帮我阻止错误?

谢谢!

非常感激!

4

1 回答 1

0

所以我不确定这是否是处理重复项的正确方法:是的,这确实不是一个好方法。你也知道:)

我建议你怎么做

当您与“员工”一起工作时,我假设会有一些员工唯一的 ID(如 EmployeeID)。因此,通过将这样的 id 作为主键,您可以进行简单的 ifExists 检查并在视图上显示适当的消息。

更新: 如果员工没有任何独特之处(甚至没有电子邮件或员工 ID 等),那么根据我的说法,您的数据库设计有问题。但这又是我个人的看法。

希望这可以帮助。

于 2012-08-15T13:39:28.057 回答