Entity Framework Provider-Typ konnte nicht geladen werden?

Ich versuche zu laufen meine tests auf TeamCity, die derzeit auf meinem Rechner installiert.

System.InvalidOperationException:

Entity Framework provider type
'System.Data.Entity.SqlServer.SqlProviderServices,
EntityFramework.SqlServer
, Version=6.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089'
für die 'System.Data.SqlClient'
ADO.NET-provider konnte nicht geladen werden. Stellen Sie sicher, dass der Anbieter die Montage
verfügbar ist, um die laufende Anwendung.

Sehen http://go.microsoft.com/fwlink/?LinkId=260882 für mehr
Informationen..

Habe ich keine Referenz zu System.Data.Entity in jedem meiner Projekte wurde vorgeschlagen, auf codeplex für die Aktualisierung auf EF6.

So, ich bin nicht sicher, warum bekomme ich diese exception.
Ich bekomme keine solche Ausnahme, wenn ich die tests ausführen von VS.

Ich habe versucht mit set CopyLocal auf false dann wieder auf true.. aber das scheint nicht zu funktionieren.

Update

Meine app.config ist die folgende . Hat dies dazu führen, dass einige Verhaltensweisen, die ich nicht verstehe ?

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
  </configSections>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
  </entityFramework>
</configuration>

Bekomme ich folgenden stacktrace in teamcity .

[MSTest] IntegrationTests.CrudTest+QuestionTest.Create
[03:59:11][IntegrationTests.CrudTest+QuestionTest.Create] Initialization method IntegrationTests.CrudTest+QuestionTest.Initialize threw exception. System.InvalidOperationException: System.InvalidOperationException: The Entity Framework provider type 'System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' for the 'System.Data.SqlClient' ADO.NET provider could not be loaded. Make sure the provider assembly is available to the running application. See http://go.microsoft.com/fwlink/?LinkId=260882 for more information..
[03:59:11]
[IntegrationTests.CrudTest+QuestionTest.Create]     at System.Data.Entity.Config.ProviderServicesFactory.GetInstance(String providerTypeName, String providerInvariantName)
   at System.Data.Entity.Config.ProviderServicesFactory.GetInstanceByConvention(String providerInvariantName)
   at System.Data.Entity.Config.DefaultProviderServicesResolver.GetService(Type type, Object key)
   at System.Data.Entity.Config.CachingDependencyResolver.<>c__DisplayClass1.<GetService>b__0(Tuple`2 k)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at System.Data.Entity.Config.CachingDependencyResolver.GetService(Type type, Object key)
   at System.Data.Entity.Config.ResolverChain.<>c__DisplayClass3.<GetService>b__0(IDbDependencyResolver r)
   at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
   at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source, Func`2 predicate)
   at System.Data.Entity.Config.ResolverChain.GetService(Type type, Object key)
   at System.Data.Entity.Config.RootDependencyResolver.GetService(Type type, Object key)
   at System.Data.Entity.Config.ResolverChain.<>c__DisplayClass3.<GetService>b__0(IDbDependencyResolver r)
   at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
   at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source, Func`2 predicate)
   at System.Data.Entity.Config.ResolverChain.GetService(Type type, Object key)
   at System.Data.Entity.Config.CompositeResolver`2.GetService(Type type, Object key)
   at System.Data.Entity.Config.IDbDependencyResolverExtensions.GetService[T](IDbDependencyResolver resolver, Object key)
   at System.Data.Entity.Config.InternalConfiguration.GetService[TService](Object key)
   at System.Data.Entity.Config.DbConfiguration.GetService[TService](Object key)
   at System.Data.Entity.Utilities.DbProviderFactoryExtensions.GetProviderServices(DbProviderFactory factory)
   at System.Data.Entity.Infrastructure.DefaultManifestTokenService.GetProviderManifestToken(DbConnection connection)
   at System.Data.Entity.Utilities.DbConnectionExtensions.GetProviderInfo(DbConnection connection, DbProviderManifest& providerManifest)
   at System.Data.Entity.DbModelBuilder.Build(DbConnection providerConnection)
   at System.Data.Entity.Internal.LazyInternalContext.CreateModel(LazyInternalContext internalContext)
   at System.Data.Entity.Internal.RetryLazy`2.GetValue(TInput input)
   at System.Data.Entity.Internal.LazyInternalContext.InitializeContext()
   at System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType)
   at System.Data.Entity.Internal.Linq.InternalSet`1.Initialize()
   at System.Data.Entity.Internal.Linq.InternalSet`1.get_InternalContext()
   at System.Data.Entity.Internal.Linq.InternalSet`1.ActOnSet(Action action, EntityState newState, Object entity, String methodName)
   at System.Data.Entity.Internal.Linq.InternalSet`1.Add(Object entity)
   at System.Data.Entity.DbSet`1.Add(TEntity entity)
   at EFRepository.Infrastructure.EFRepository`1.Add(T item) in c:\TeamCity\buildAgent\work\da2ea4e72c0e77f0\Repository\Infrastructure\EFRepository.cs:line 22
   at IntegrationTests.CrudTest.Initialize() in c:\TeamCity\buildAgent\work\da2ea4e72c0e77f0\IntegrationTests\CrudTest.cs:line 34
Kommentar zu dem Problem
Ist EntityFramework.SqlServer.dll eingesetzt zusammen mit EntityFramework.dll? In EF6 SqlServer und SqlServerCE-Anbieter sind nicht in der gleichen assembly wie die EF-engine, wie war es mit früheren Versionen. Sollten Sie nicht fügen Sie einen Verweis auf die System.Data.Entity.dll. Der Anbieter Modell EF6 geändert im Vergleich zu EF 5 und EF 5 Anbieter wird einfach nicht funktionieren. Zusätzlich können Sie auf ein paar knifflige Probleme (wie EF5 Geodaten-Typen behandelt, als entity-Typen in EF6) Kommentarautor: Pawel
Ja, ich habe überprüft, es ist keine Referenz zu System.Daten.Entität und die Verweise auf die beiden EntityFramework.dll und EntityFramework.SqlServer.dll vorhanden sind. Wieder die projetc kompiliert und die tests laufen in der VS. Es ist nur, wenn ich die tests, die auf TeamCity, dass der Fehler auftaucht. Kommentarautor: ashutosh raina
Das ist das richtige setup. Ich habe nicht verwendet, TeamCity, aber es scheint mir, dass, wenn Ihre app bereitgestellt, die zum ausführen der tests mit TeamCity der EntityFramework.SqlServer.dll fehlt und daher die Ausnahme. Kommentarautor: Pawel
Habe ich entfernt bin von meinem gitignorelist .. es immer noch wirft den gleichen Fehler.. irgendwelche Ideen, wo es versucht, zu suchen für die dlls ? Kommentarautor: ashutosh raina
Ich deinstalliert EntityFramework von nuget-Paketen und wieder installiert und es behoben haben Kommentarautor: Abhyudaya Srinet

InformationsquelleAutor der Frage ashutosh raina | 2012-12-25

Schreibe einen Kommentar