7 Stimmen

Konnte einen oder mehrere der angeforderten Typen nicht laden. Rufen Sie die LoaderExceptions-Eigenschaft für weitere Informationen ab. mit EntityDataSource

Ich habe ein Problem, das nur auftritt, wenn das EntityDataSource auf ASP.NET (*.aspx) Seiten vorhanden ist. Das Interessante ist, dass es nur auftritt, wenn ich die Seite aktualisiere (F5) oder erneut anschaue, und es macht mich wahnsinnig, es scheint ein Bug mit Entity Framework zu sein, denn ich habe es mit einem anderen Projekt ausprobiert und erhalte den gleichen Fehler.

Mindestens einer der angeforderten Typen kann nicht geladen werden. Rufen Sie die LoaderExceptions-Eigenschaft für weitere Informationen ab. Beschreibung: Es ist ein nicht behandelte Ausnahme während der Ausführung der aktuellen Web-Anforderung aufgetreten. Bitte überprüfen Sie den Stapelrückverfolgung für weitere Informationen über den Fehler und wo er im Code herkommt. Ausnahmedetails: System.Reflection.ReflectionTypeLoadException: Mindestens einer der angeforderten Typen kann nicht geladen werden. Rufen Sie die LoaderExceptions-Eigenschaft für weitere Informationen ab.

Stapelverfolgung:

[ReflectionTypeLoadException: Mindestens einer der angeforderten Typen kann nicht geladen werden. Rufen Sie die LoaderExceptions-Eigenschaft für weitere Informationen ab.]
   System.Reflection.RuntimeModule.GetTypes(RuntimeModule module) +0
   System.Reflection.RuntimeModule.GetTypes() +4
   System.Reflection.Assembly.GetTypes() +78
   System.Data.Metadata.Edm.ObjectItemConventionAssemblyLoader.LoadTypesFromAssembly() +32
   System.Data.Metadata.Edm.ObjectItemAssemblyLoader.Load() +25
   System.Data.Metadata.Edm.AssemblyCache.LoadAssembly(Assembly assembly, Boolean loadReferencedAssemblies, ObjectItemLoadingSessionData loadingData) +160
   System.Data.Metadata.Edm.AssemblyCache.LoadAssembly(Assembly assembly, Boolean loadReferencedAssemblies, KnownAssembliesSet knownAssemblies, EdmItemCollection edmItemCollection, Action`1 logLoadMessage, Object& loaderCookie, Dictionary`2& typesInLoading, List`1& errors) +166
   System.Data.Metadata.Edm.ObjectItemCollection.LoadAssemblyFromCache(ObjectItemCollection objectItemCollection, Assembly assembly, Boolean loadReferencedAssemblies, EdmItemCollection edmItemCollection, Action`1 logLoadMessage) +316
   System.Data.Metadata.Edm.ObjectItemCollection.ExplicitLoadFromAssembly(Assembly assembly, EdmItemCollection edmItemCollection, Action`1 logLoadMessage) +53
   System.Data.Metadata.Edm.MetadataWorkspace.ExplicitLoadFromAssembly(Assembly assembly, ObjectItemCollection collection, Action`1 logLoadMessage) +93
   System.Data.Metadata.Edm.MetadataWorkspace.LoadFromAssembly(Assembly assembly, Action`1 logLoadMessage) +130
   System.Web.UI.WebControls.EntityDataSourceView.ConstructContext() +585
   System.Web.UI.WebControls.EntityDataSourceView.ExecuteSelect(DataSourceSelectArguments arguments) +76
   System.Web.UI.DataSourceView.Select(DataSourceSelectArguments arguments, DataSourceViewSelectCallback callback) +21
   System.Web.UI.WebControls.DataBoundControl.PerformSelect() +143
   System.Web.UI.WebControls.BaseDataBoundControl.DataBind() +74
   System.Web.UI.WebControls.GridView.DataBind() +4
   System.Web.UI.WebControls.BaseDataBoundControl.EnsureDataBound() +66
   System.Web.UI.WebControls.CompositeDataBoundControl.CreateChildControls() +75
   System.Web.UI.Control.EnsureChildControls() +102
   System.Web.UI.Control.PreRenderRecursiveInternal() +42
   System.Web.UI.Control.PreRenderRecursiveInternal() +175
   System.Web.UI.Control.PreRenderRecursiveInternal() +175
   System.Web.UI.Control.PreRenderRecursiveInternal() +175
   System.Web.UI.Control.PreRenderRecursiveInternal() +175
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2496

Wie kann ich dieses Problem beheben?

6voto

juFo Punkte 16511

Dies ist ein Fehler in .NET 4.0 und sollte in .NET 4.5 behoben werden. Eine mögliche Lösung besteht darin, "Copy Local" auf true für Ihre Verweise zu setzen und nicht benötigte Verweise zu entfernen.

Weitere Informationen finden Sie unter Unable to load one or more of the requested types. Connected with EntityDataSource.

3voto

andrej351 Punkte 887

Siehe Problem Zufällige 'Unable to load one or more of the requested types' Fehler (588847):

EntityDataSource wird versuchen, alle Typen aus allen referenzierten Assemblys zu laden, um alle Entitätstypen Ihres Entitätsdatenmodells zu entdecken.

Die Verwendung der Technik der anderen Antworten, um sicherzustellen, dass alle Ihre DLL-Dateien auf "Lokales Kopieren" eingestellt sind, könnte helfen. Andernfalls versuchen Sie deren Workaround: setzen Sie die ContextTypeName-Eigenschaft Ihres EntityDataSource auf den vollqualifizierten Namen Ihres Entitätscontainer-Typs.

Der Workaround hat das Problem für mich gelöst.

2voto

Mentoliptus Punkte 2768

Ich hatte das gleiche Problem und stellte fest, dass es passiert, weil der Produktionsumgebung die richtigen DLLs fehlen. Sie können das Attribut "Copy Local" der Referenzen Ihres Projekts auf true setzen.

Weitere Informationen finden Sie unter Fehlermeldung 'Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.'

1voto

Brandon Zeider Punkte 11

Ich hatte heute das gleiche Problem, aber nur auf dem Produktionsserver, nicht in der Entwicklung oder beim Test (typisch). Ich untersuche immer noch, was passiert, aber ich habe den Produktionsserver .NET-Vertrauensstufe auf Hoch geändert und das Problem verschwand... Dies ist natürlich nur eine vorübergehende Lösung, aber besser als nichts. Ich hoffe, das hilft.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X