Ciąg połączenia „MyConnection” w pliku konfiguracyjnym aplikacji nie zawiera wymaganego atrybutu providerName. "


85

Używam Entity Framework Code First,

Moje parametry połączenia znajdują się w pliku konfiguracyjnym:

<connectionStrings>
    <clear/>
    <add name="ApplicationServices" connectionString="Data Source=PC-X;Initial Catalog=MYdb;Integrated Security=True"/>
  </connectionStrings>

Kiedy próbuję uzyskać dostęp do danych (coś, co powinno utworzyć bazę danych), pojawia się następujący błąd:

Ciąg połączenia „ApplicationServices” w pliku konfiguracyjnym aplikacji nie zawiera wymaganego atrybutu providerName. "

czego mi brakuje?

Odpowiedzi:


182

Brakuje następującego fragmentu kodu po connectionStringatrybucie (zakładając, że używasz języka SQL):

providerName="System.Data.SqlClient"


18
Jeśli używasz Entity Framework:providerName="System.Data.EntityClient"
Dr1Ku

3
Próbowałem to dodać do parametrów połączenia. Jest to raczej nowy atrybut elementu <add />. Atrybut równorzędny do atrybutu connectionString.
Sean B

@ IronMan84 Otrzymałem błąd rzutowania typu po użyciu SqlClient i EntityClient działał
Zia Ul Rehman Mughal

15

Kiedyś w przyszłości. cały kod

<add name="YouContext" connectionString="Integrated Security=True;Persist Security Info=False;Initial Catalog=YourDatabaseName;Data Source=YourPCName;" providerName="System.Data.SqlClient"/>

0

Zejdź na dół do swojego web.config, aż dotrzesz do providerstagu. Na przykład, oto oświadczenie moich dostawców:

<providers><provider invariantName="System.Data.SqlClient" ... /></providers>

powinieneś dodać to System.Data.SqlClientjako nazwę dostawcy w ciągu połączenia, aby parametry połączenia wyglądały następująco:

  <connectionStrings>
 <add name="ApplicationServices" providerName="System.Data.SqlClient" connectionString="Data Source=PC-X;Initial Catalog=MYdb;Integrated Security=True"/>
  </connectionStrings>


0

W moim przypadku problem dotyczył nieprawidłowego celu projektu StartUp. W konsoli PM projekt montażu docelowego migracji był poprawny.

Mam rozwiązanie obejmujące wiele projektów, a cel znajdował się w jakimś projekcie usługi sieciowej.

Więc zmieniłem StartUp na główny projekt WebSite i migracja zakończyła się bez błędów.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.