2017-11-30 2 views
0

Ich versuche, Entity Framework mit Code erste Methode zu verwenden, aber aus irgendeinem Grund erstellt es keine Datenbank für mich. Ich nehme an, dass das Problem in meiner Konfigurationsdatei app.config ist. Ich habe das Entity Framework nie zuvor benutzt. Ich habe ähnliche Beiträge auf Stackoverflow gelesen, aber ich kann mein Problem nicht lösen. Ich bekomme keine Fehler während der Kompilierung, aber wenn ich Microsoft SQL Server öffne, sehe ich meine Datenbank nicht erstellt.Entity Framework app.config Konfiguration erstellt keine Datenbank

Dies ist meine app.config-Datei. Ich habe diesen Code online gefunden, aber ich weiß nicht, was ich in das Datenbankattribut schreiben soll.

<configuration> 
    <configSections> 
     <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 --> 
    </configSections> 
    <startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" /> 
    </startup> 
    <appSettings> 
    <add key="ipadress" value="127.0.0.1" /> 
    <add key="port" value="14000" /> 
    </appSettings> 

    <connectionStrings> 
    <add name="AVLdataContext" connectionString="Server=.\SQLEXPRESS;Database=Blogging;Integrated Security=True;" providerName="System.Data.SqlClient"/> 
    </connectionStrings> 
</configuration> 

Auch hier ist meine Modellklasse:

namespace TCPserver 
{ 
    public class DataBaseModel 
    { 
     public static string LoadToDatabase(byte[] arr, string imei) 
     { 
      return ReversedBinaryReader.LoadToDatabase(arr, imei); 
     } 
    } 

    public class AVLdataContext : DbContext 
    { 
     public DbSet<Datas> Data { get; set; } 
     public DbSet<GPSelement> GPSelement { get; set; } 
     public DbSet<IOelement> IOelement { get; set; } 
    } 
} 

Hier ist mein Controller:

using (var db = new AVLdataContext()) 
{ 
    db.Data.Add(data); 
    db.GPSelement.Add(data.Gps); 
    db.IOelement.Add(data.Io); 
    db.SaveChanges(); 
} 

Was mache ich falsch? Ich bin völlig grün.

+0

Haben Sie mehrere Projekte in Ihrer Lösung? wenn ja, versuche, dieses Teil zur web.config deiner Web-App hinzuzufügen – ztadic91

+0

Es löst nicht mein Problem .. – CaL17

Antwort

2

Sie müssen die AVLdataContext aktualisieren, um umfassen ein Konstruktor ruft base() mit der Verbindungszeichenfolge

public class AVLdataContext : DbContext 
{ 
    public AVLdataContext() 
     : base("AVLdataContext") 
    { 

    } 

    public DbSet<Datas> Data { get; set; } 
    public DbSet<GPSelement> GPSelement { get; set; } 
    public DbSet<IOelement> IOelement { get; set; } 
} 

Ohne diese EF hat keine Möglichkeit, zu wissen, wo sich die Datenbank.

Schauen Sie sich auch this an.

+0

Nützliche Antwort, aber immer noch das gleiche Ergebnis. Was kann ich sonst noch tun? – CaL17

0

Versuchen Sie Ihr Paket-Manager-Konsole zu öffnen und Folowing Befehle schreiben:

Enable-Migrations 
Add-Migration initial 
Update-Database 

Dies wird Migrationen für Ihre db ermöglichen, erste Migration hinzufügen und db erstellen.

Verwandte Themen