2015-07-07 22 views
11

Mam prosty projekt C#. To jest mój ciąg połączenia w moim web.config dla bazy danych:update-database: "Wystąpił błąd związany z siecią lub wystąpieniem konkretnej instancji podczas nawiązywania połączenia z serwerem SQL"

<connectionStrings> 
    <add name="DefaultConnection" 
     connectionString="Data Source=172.17.0.47;Initial Catalog=DevSystemListe;User ID=web_access;Password=123456" 
     providerName="System.Data.SqlClient" /> 
</connectionStrings> 

mam już pewność, że to połączenie jest aktywne. Mogę połączyć się z bazą danych z Visual Studio za pomocą tego połączenia, a także mogę zobaczyć tabele i dane.

Kiedy chcę zaktualizować bazę danych z update-database występuje ten błąd:

A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)

odinstalowałem Entity Framework, a następnie zainstalować go ponownie. Nic się nie zmieniło.

+0

Serwer SQL jest powiązany z domyślnym portem (1433)? – fishmong3r

+0

@ fishmong3r Tak jest. – Anaa

+0

Jak nazywa się ciąg połączenia, który przekazałeś do konstruktora klasy 'DbContext'? –

Odpowiedz

34

końcu dowiedziałem. Mam projekt strony i moje API w moim rozwiązaniu. Problem polegał na tym, że strona została ustawiona jako projekt startowy. Tak więc struktura encji przeszukała ciąg połączenia w witrynie web.config, a nie w apl's web.config. Zmiana projektu startowego na mój interfejs API rozwiązała problem.

Jeśli chcesz mieć projekt strony internetowej jako projekt startowy. Po prostu skopiuj ciąg połączenia do stron WWW web.config.

Niemniej dziękuję za pomoc.

+2

Zmiana projektu początkowego również zadziałała. Dzięki. – joey

+2

Bam! Dziękuję za odpowiedź na własne pytanie. Naprawdę to doceniam! Właśnie rozwiązałeś mój problem po tym, jak przeglądałem inne wątki i próbowałem różnych rozwiązań. Dziękuję Ci! –

0

Mówisz, można użyć tej ciąg połączenia zobaczyć danych & tabel ... można również korzystać z tego połączenia wstawić nowe rekordy?

Dla każdego użytkownika program SQL Server umożliwia zdefiniowanie dostępu do odczytu i/lub zapisu. Być może twój użytkownik po prostu nie ma pozwolenia na ... db_datawriter?

enter image description here

+0

Tak, mój użytkownik ma uprawnienia. Dzięki i tak. – Anaa

+0

Ta odpowiedź jest nieistotna dla pytania. Zmiana projektu startowego rozwiązuje problem. –

Powiązane problemy