7

我最近使用实体框架 4.3 创建了一个新的 Web 项目。我正在使用数据库优先设计。

实体框架将此部分添加到我的 web.config 中,它提供了一些信息性错误消息。我在某处读到此代码与代码优先设计有关-我需要它吗-我只是将其删除吗?

<entityFramework>
  <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlCeConnectionFactory, EntityFramework">
    <parameters>
      <parameter value="System.Data.SqlServerCe.4.0" />
    </parameters>
  </defaultConnectionFactory>
</entityFramework>

谢谢。

4

3 回答 3

24

这可能非常相关(强调我的):

配置部分允许您指定 Code First 应使用的默认连接工厂来定位要用于上下文的数据库。仅当没有将连接字符串添加到上下文的配置文件中时,才使用默认连接工厂

请参阅MSDN 上的实体框架配置文件设置

于 2013-05-28T18:52:06.557 回答
3

如果您不使用 CodeFirst,我不能 100% 确定这是否重要(尝试删除它并查看它是否运行正常)。但是,如果您使用 CodeFirst 并使用 SQLCE 4.0 作为主数据库,那么您需要保留它。请参阅文档

如果未设置默认连接工厂,Code First 将使用指向 .\SQLEXPRESS 的 SqlConnectionFactory。SqlConnectionFactory 还有一个构造函数,允许您覆盖连接字符串的一部分。如果要使用 .\SQLEXPRESS 以外的 SQL Server 实例,可以使用此构造函数来设置服务器。

于 2013-01-22T11:38:12.780 回答
0

您会收到这些警告消息,因为 entityFramework 的部分元素定义在Web.config. 它看起来像这样:(注意:以下适用于 EF5.0)

<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
于 2013-07-13T08:44:11.473 回答