EF预生成视图和多个上下文

时间:2013-05-15 13:01:51

标签: asp.net entity-framework ef-code-first

在我们的环境中,我们有200多个表,我们使用EF 5.0 Code First来管理数据库。我们的软件允许用户修改实体并向其添加自定义字段。

其中超过100个是固定且无法自定义的系统实体。

应用程序的初始加载时间超过2分钟!!!!

我们觉得如果我们能够以某种方式使用EF预生成的视图来固定实体,我们可以提高最初的预热时间。

问题是,在什么条件下,EF允许我们为项目中的多个实体预先生成视图?

1 个答案:

答案 0 :(得分:0)

如果您参考上下文菜单选项 Entity FrameWork - Generate views

是的,视图是根据上下文

然后生成的文件是有问题的上下文。 检查生成的视图的来源。您将看到构造函数按名称引用上下文。 它还使用上下文哈希检查视图和Context仍匹配。

/// </Summary>
    public ViewsForBaseEntitySetsCC0A5F35D57704F5E501B804CB5CFFC8DCAD8C8E1AFC199B8C68FCD54D47FF7A()
    {
        this.EdmEntityContainerName = "THE DB CONTEXT NAME";
        this.StoreEntityContainerName = "CodeFirstDatabase";
        this.HashOverMappingClosure = "c7c56b72d1e7053b77daa9e4fb813dbb5ad00ae0a084f07f58399324dd70e906";
        this.HashOverAllExtentViews = "5fae06be83f62e86b71260bebb0e53a51d8b533588febbefbdcbaf628e514062";
        this.ViewCount = 62;
    }

编辑:为何选择最佳实践信息

请参阅Julie Lerman article on MSDN on bounded contexts