2012-08-16 5 views

Antwort

18

Bei weiteren Untersuchungen sieht es so aus, als ob es wirklich einfach ist, aber es ist nicht klar beim Lesen der Dokumente.

Zunächst einmal müssen Sie die Entity Framework Teil der Konfiguration

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

haben Sobald Sie, dass Sie dann die Verbindungszeichenfolge angeben. Standardmäßig ist der Name der Verbindungszeichenfolge der vollständig qualifizierte Name Ihres Kontexts. Also in meinem Test-App wurde der Kontext 'DataModel.Context' genannt, also brauche ich eine Verbindungszeichenfolge für '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" /> 

Diese verwendet dann die Datei 'database.mdf' in das Datenverzeichnis des Projekts.

+3

In welchen Abschnitt sollen Sie die setzen? –

+0

@WouterSchut Kasse meine Erklärung – Yar

2

Als Nick erwähnt, müssen Sie die connectionStringaußerhalb von <entityFramework> Tags liefern. So eine Probe App.config könnte so aussehen:

<?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> 

auch beachten, dass <parameter value="mssqllocaldb" /> auf der Version von SQL Server abhängig ist. Check this answer for more information.