2016-04-14 9 views
0

Ich entwickle eine MVC-Anwendung mit Code First Approach. Ich habe meine Modellklassen in einem separaten Klassenbibliotheksprojekt definiert. Ich habe auch meine DBContext-Klasse definiert. Ich habe sichergestellt, dass meine DBContext-Klasse den gleichen Namen wie meine Verbindungszeichenfolge hat. Aus irgendeinem Grund sehe ich die Datenbank nicht erstellt. Ich verstehe, ist durch die Definition Ihrer Klassen und Verbindungszeichenfolge Entity Framework würde die Datenbank generieren. Ich bin mir sicher, mit meiner Verbindungszeichenfolge, wie es mit meinen anderen Anwendungen funktioniert. Könnte jemand sagen, was das ProblemMVC-Code zuerst - Datenbank generiert nicht

public class Customer 
    { 
     public int CustomerId { get; set; } 
     public string Name { get; set; } 
     public string Address { get; set; } 
     public string Phone { get; set; } 
     public string Email { get; set; } 

    } 
public class TestDbContext : DbContext 
    { 
     public DbSet<Customer> Customer { get; set; } 
    } 

App.Config Klasse

<connectionStrings> 
    <add name="TestDbContext" connectionString="Data Source=XYZ-PC\MSSQLSERVER2014;Initial Catalog=SalesOrderManagement;Integrated Security=True;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False" providerName="System.Data.SqlClient" /> 
    </connectionStrings> 
+0

Welche Version von EF? –

+0

es ist das Neueste. 6.1.3 – Tom

Antwort

0

EF generiert die Datenbank nicht, bis Sie den Kontext nennen. Sie können dies durch Hinzufügen eines statischen Konstruktors mit dem ausgewählten Initialisierer sicherstellen:

public class TestDbContext : DbContext 
{ 

    static TestDbContext() 
    { 
     Database.SetInitializer(new DropCreateDatabaseIfModelChanges<TestDbContext>()); 
    } 

    public DbSet<Customer> Customer { get; set; } 
} 
+0

Entschuldigung, dass es EntityModelContext() nicht erkennt. Meintest du static TestDbContext als consructor – Tom

+0

? Ja, es ist ein Konstruktor. Bearbeitet. –

+0

Ich baute das Projekt, aber es scheint, die Datenbank zu erstellen – Tom

Verwandte Themen