2011-01-18 10 views
0

エンティティフレームワーク4を使用してASP.NET v4アプリケーションを開発しました。テストサーバー(.NET Framework 4がインストールされたWindows 2008 R2) 。EF4要求された種類の1つ以上をテストサーバーに読み込めません

アプリケーションはこのエラーをスローします。私は私の開発用PC上で見ると

[ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.]
System.Reflection.RuntimeModule.GetTypes(RuntimeModule module) +0
System.Reflection.Assembly.GetTypes() +144 System.Data.Metadata.Edm.ObjectItemConventionAssemblyLoader.LoadTypesFromAssembly() +45 System.Data.Metadata.Edm.ObjectItemAssemblyLoader.Load() +34 System.Data.Metadata.Edm.AssemblyCache.LoadAssembly(Assembly assembly, Boolean loadReferencedAssemblies, ObjectItemLoadingSessionData loadingData) +130
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) +248
System.Data.Metadata.Edm.ObjectItemCollection.LoadAssemblyFromCache(ObjectItemCollection objectItemCollection, Assembly assembly, Boolean loadReferencedAssemblies, EdmItemCollection edmItemCollection, Action
1 logLoadMessage) +580
System.Data.Metadata.Edm.ObjectItemCollection.ImplicitLoadAssemblyForType(Type type, EdmItemCollection edmItemCollection) +121
System.Data.Metadata.Edm.MetadataWorkspace.ImplicitLoadAssemblyForType(Type type, Assembly callingAssembly) +178
System.Data.Objects.ObjectContext.GetTypeUsage(Type entityCLRType) +49
System.Data.Objects.ObjectContext.CreateObjectSet(String entitySetName) +163
PageManager.FetchDefaultPage() +114

私はアセンブリで、このディレクトリを参照してください。

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0

しかし、全体.NETFrameworkディレクトリが欠落しているサーバ上で、 v3.0とv3.5のディレクトリがあります。私は、サーバーがバージョン3.5.0.0ではなく4.0.0.0(私のアプリケーションが参照しているもの)であるこれらのディレクトリのいずれかからアセンブリを使用していると仮定します。

何をインストールする必要がありますか? .NET 4はサーバーにインストールされています。私は100%確実です。

+0

v4.0.x.xフォルダがない場合、.netは**インストールされていません**。 100%確実です。 –

+0

まあ、私はEF4を必要としない他の.NET 4アプリケーションを実行しています。そして、.NET 4を確実に使用しています...また、.NET4のインストールを再実行し、修復を行いました。 – joop

+0

また、C:\ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319が存在します。 – joop

答えて

0

問題は、私はReflectionTypeLoadExceptionを捕まえてLoaderExceptionsをループ.NET 4とは何の関係もなかったです。 Microsoft.SyncronisationFrameworkへの参照がありませんでした。

おそらく、欠落している参照のリストを持つ例外のダイレクトメッセージがいいでしょう。

関連する問題