2013-05-22 4 views
5

Mam ciąg połączenia:Dlaczego Entity Framework ignoruje mój ciąg połączenia?

<add name="Gini" providerName="System.Data.SqlClient" connectionString="user id=user;Password=pa55;Data Source=server;Database=gini" />

chcę EF, aby móc kontrolować tworzenie bazy danych i aktualizacji poprzez migracje więc mam pozwolić, aby to mieć pełną kontrolę nad DB.

Moja klasa kontakt wygląda następująco:

public class GiniContext : DbContext 
{ 
    public DbSet<UserSession> UserSessions { get; set; } 

    protected override void OnModelCreating(DbModelBuilder modelBuilder) 
    { 
     modelBuilder.Configurations.Add(new UserSessionConfiguration()); 
    } 

    public GiniContext() : base("Gini") 
    { 
     Database.Create(); 
    } 
} 

Spodziewam się tego, aby stworzyć bazę danych o nazwie „Gini” na serwerze o nazwie „serwer” używając nazwy użytkownika i hasła, jak wyżej, ale to tworzenie go na instancja (LocalDB) \ v11.0.

Co robię źle?

+0

Próba nazwania go "GiniContext"? – mxmissile

+0

Myślę, że aby poprawnie uruchomić kontekst, a ciąg połączenia musi mieć tę samą nazwę, więc spróbuj zmienić nazwę ciągu połączenia w konfiguracji na "GiniContext" – DrCopyPaste

+0

Próbowałem zmienić nazwę połączenia na "GiniContext" i zmienić nazwa również w konstruktorze. –

Odpowiedz

3

Jeśli masz dwa projekty, takie jak Biblioteka klas dla obiektów i aplikacja sieci Web, która się do niej odwołuje. Będziesz musiał dodać połączenie z app.config do web.config w swojej aplikacji internetowej.

+0

Czy musi to być biblioteka klasy i aplikacja internetowa? Czy może to być po prostu aplikacja internetowa? –

+0

Właśnie sprawdziłem jeden z moich projektów i konfiguracja aplikacji go nie ma, ale konfiguracja internetowa ma to. Ten wątek ma trochę informacji na ten temat. http://stackoverflow.com/questions/4290919/where-to-store-connection-string-for-class-library-in-desktop-application-can-i – arunlalam