2016-05-16 34 views
8

Opublikowałem mój projekt WCF na serwer, opublikowałem również aplikację MVC na tym samym polu, które zużywa usługi WCF.Jak rozwiązać wyjątek dostawcy Entity Framework

Przy próbie logowania na mojej aplikacji MVC, to używa usługi WCF ale ja dostać ten wyjątek w przeglądarce,

W Typ dostawcy „System.Data.Entity.SqlServer.SqlProviderServices Entity Framework, EntityFramework.SqlServer "zarejestrowany w pliku konfiguracyjnym aplikacji dla dostawcy ADO.NET o niezmiennej nazwie" System.Data.SqlClient " nie mógł zostać załadowany. Upewnij się, że nazwa kwalifikowana do zestawu jest używana i że zespół jest dostępny dla uruchomionej aplikacji.

Jest to wyjątek Entity Framework, ale zakładam, ponieważ mój projekt już odwołuje EF w środowisku dev, po wdrożeniu projektu służby, DLL powinny zawierać odniesienie EF również, ale nie jestem pewien, dlaczego jestem coraz ten błąd.

widzę tę wiadomość, ponieważ włączyłem includeExceptionDetailInFaults="True"

+1

zainstalowany z NuGet Package Manager, który nie został poprawnie zainstalowany w projekcie. spróbuj ponownie PM> Install-Package EntityFramework –

+1

Jak już wspomniałem, nie ma go na moim lokalnym komputerze, to jest na moim serwerze, na którym nie mam zainstalowanego studia wizualnego. Jest to opublikowana aplikacja wyrzucająca ten błąd, działa dobrze na moim lokalnym komputerze. @NazmulHasan –

Odpowiedz

11

@FranciscoGoldenstein mówiąc! Nie musisz instalować Entity Framework w aplikacji Console ani w czymkolwiek, wystarczy dodać odwołanie do Assembly EntityFramework.SqlServer.dll. Ten zestaw można skopiować z projektu biblioteki klas, który korzysta z Entity Framework do folderu LIB i dodać do niego odwołanie.

Podsumowując:

  • klasy aplikacji Biblioteka:
    • Install Entity Framework
    • Wpisz swój kod warstwy danych
    • plik app.config posiada wszystkie konfigurację związaną z Entity Framework z wyjątkiem ciąg połączenia.
  • Tworzenie konsoli internetowej lub pulpitu aplikacji:
    • dodać odwołanie do pierwszego projektu.
    • Dodaj odniesienie do obiektu EntityFramework.SqlServer.dll.
    • app.config/web.config ma ciąg połączenia (pamiętaj, że nazwa wpisu konfiguracyjnego musi być taka sama jak nazwa klasy DbContext.

to jest praca dla mnie ! mam nadzieję, że to pomaga.

również tego linku Entity Framework Provider type could not be loaded?

+0

masz rację, z jakiegoś powodu kompilacja nie dodawała tej biblioteki, kiedy ją publikuję z jakiegoś powodu. –

+1

Odwołanie EntityFramework.SqlServer.dll pomogło mi –

1

Odinstaluj Entity Framework Nuget i po prostu ponownie zainstalować, pracował dla mnie.

0

Ja także miałem podobny problem

Mój problem został rozwiązany, wykonując następujące czynności:

enter image description here

enter image description here