Zauważyłem, że ta dziwna rzecz się dzieje, być może to błąd, ale być może czegoś mi brakuje.EntityFramework.SqlServer nie został wdrożony w publikacji internetowej
Załóżmy, że masz rozwiązanie z dwoma projektami: jeden to projekt MVC3, inny to biblioteka klas do dostępu do danych (klasy modelu Entity Framework, kontekst danych i podobne).
Biblioteka klas odwołuje się do bibliotek EntityFramework
(EF6) i EntityFramework.SqlServer
.
Projekt MVC odwołuje się do tej biblioteki klasowej DAL
. Biblioteka DAL
może być używana przez jakiś inny kod poza aplikacją, aby oddzielić go od projektu WWW.
W każdym razie wydaje się, że po opublikowaniu projektu MVC3 proces pomija kopiowanie zespołu EntityFramework.SqlServer
do katalogu publish/bin. Mimo to, biblioteka ta publikuje bazę wraz z innymi bibliotekami i samą biblioteką klas.
Czy istnieje sposób, aby wydawca opublikował również wymagany sterownik SqlServer?
Masz na myśli w pliku Content.tt? Czy to nie zostanie nadpisane za każdym razem, gdy dokonasz zmiany? – RichC
Nie jestem pewien, dlaczego tak się dzieje, ale właśnie stworzyłem klasę wewnętrzną i umieściłem to oświadczenie w konstruktorze i naprawiłem problem. – Lereveme
@RichC, nie jest to związane z TT. Powinienem dodać, że jest to poprawka tylko do Code-first – Crypton