2012-08-16 32 views

回答

18

在進一步的調查中,它看起來很簡單,但在閱讀文檔時並不清楚。所有的

首先你需要有配置的實體框架部分

<entityFramework> 
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework"> 
    <parameters> 
    <parameter value="v11.0" /> 
    </parameters> 
</defaultConnectionFactory> 

一旦你的,你再需要指定連接字符串。默認情況下,連接字符串名稱是您的上下文的完全限定名稱。所以在我的測試應用程序,上下文被稱爲「DataModel.Context」,所以我需要一個連接字符串「DataModel.Context」

<connectionStrings> 
<add name="DataModel.Context" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=database;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\database.mdf" providerName="System.Data.SqlClient" /> 

這則使用文件「database.mdf」在項目的數據目錄。

+3

你應該在哪一部分放置? – 2015-06-23 16:25:38

+0

@WouterSchut檢查我的解釋 – Yar 2016-01-13 22:41:56

2

正如Nick所提到的,您需要提供connectionString以外的<entityFramework>標籤。因此,一個樣品可能App.config是這樣的:

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <configSections> 
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> 
    </configSections> 
    <connectionStrings> 
    <add name="CSOMLocalDataProvider.CSOMContext" 
    connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=D:\path\to\Database.mdf;Integrated Security=True" providerName="System.Data.SqlClient"/> 
    </connectionStrings> 
    <entityFramework> 
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework"> 
     <parameters> 
     <parameter value="mssqllocaldb" /> 
     </parameters> 
    </defaultConnectionFactory> 
    <providers> 
     <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" /> 
    </providers> 
    </entityFramework> 
</configuration> 

也注意到<parameter value="mssqllocaldb" />取決於你的SQL Server的版本。 Check this answer for more information

相關問題