2011-12-06 16 views
7

Zasadniczo używam techniki kodu Entity Framework Code First. Kod, który napisałem, działa. Jednak nie mogę znaleźć nowo utworzonej bazy danych w SQL Server Management Studio. Gdzie to jest? Jakiego IDE powinienem używać, aby zobaczyć nowo utworzoną bazę danych i tabele. Uruchomiłem następujący kod bez problemu: IsoLocationContext db = new IsoLocationContext();Nie można znaleźć nowej bazy danych kodu źródłowego pierwszego kodu

Address address = new Address(); 

    address.TrackingNumber = "123"; 

    db.Addresses.Add(address); 
    db.SaveChanges(); 

Jednak nie mogę znaleźć bazy danych i tabel. Próbowałem odświeżyć listę baz danych.
Dodałem następujący wiersz, aby upewnić się, że dane rzeczywiście trafiły do ​​bazy danych.

IList<Address> addresses = db.Addresses.ToList(); 

Powyższe przetwarzanie również zadziałało. Zatrzymałem także i uruchomiłem serwer i zrestartowałem całą maszynę. Tylko po to, aby upewnić się, że dane nie są przechowywane w pamięci. Wszystko działało zgodnie z oczekiwaniami. Podczas pracy aplikacji uruchomiłem także profil Profiler na serwerze i nie widziałem żadnych wpisów w śladzie.

Proszę mi powiedzieć, czego mi brakuje. To doprowadza mnie do szału.

Używam również wersji programu SQL Server 2008 R2 dla programistów/klientów.

Odpowiedz

11

spróbuj poszukać w ciągu połączenia tak:

((IObjectContextAdapter)db).ObjectContext.Connection.ConnectionString 
+0

Dzięki który wskazał mi w dobrym kierunku. Piszą do SQL Express. Naprawdę nie sądziłem, że mam SQL Express na mojej maszynie. Ale domyślam się, że zainstalowała go moja instalacja VS 2010. Inną rzeczą jest dziwne, że podałem ciąg połączenia, który nie jest SQL Express. Domyślam się, że Code First ignoruje ciąg połączenia. Pomógł mi rozwiązać mój problem, teraz muszę dowiedzieć się, jak mogę pobrać aplikację do bazy danych, które chcę. – Richard

+1

Po utworzeniu klasy DbContext można określić ciąg połączenia w konstruktorze klasy podstawowej. Coś w stylu 'public class MyDbContext: DbContext {public MyDbContext(): base (" Źródło danych = myServerAddress; Initial Catalog = myDataBase; Integrated Security = SSPI; ") {}}' –

+0

Awesome, dzięki za podpowiedź – Richard

Powiązane problemy