首先在Entity Framework 4.2代码中查找参考数据

时间:2012-06-06 18:52:43

标签: entity-framework entity-framework-4.1 ef-code-first

我正在整理一个具有大量参考数据的代码优先模型。此模型基于应用程序,服务器和构建部署。因此,有许多关系。我感觉到的痛苦是新记录被放置在我试图用作参考数据的实体表中。例如,我们有一个服务器列表。我只想在表中看到服务器ONCE。对于引用该服务器的所有实体,我希望它们使用该行。我的ServerRoles和Applications表也是如此。这些表包含我播种的静态数据,应该很少更改。

我知道我可以通过查找和手动布线来解决这个问题,但我认为EF会理解这种情况。

1 个答案:

答案 0 :(得分:0)

首先使用Entity Framework代码,您可以使用受保护参数的构造函数私有集属性创建不可变对象

它确实适用于EF 5 Beta。

[更新]

使用EF 4.3.1进行测试,它可以正常工作。

public class Nation
{
    protected Nation() {}

    public Nation(Guid id, string name)
    {
        Id = id;
        Name = name;
    }

    public Guid Id { get; private set; }

    public string Name { get; private set; }
}