2013-10-30 206 views
3

我想通过Visual Studio 2012发布我的Webforms项目到我的主机1 & 1.我的web项目在当地零问题上正常工作。它成功地构建和发布,但是,输入域url时出现以下错误。无法加载文件或程序集“EntityFramework”或其某个依赖项。程序集可能已被篡改

Could not load file or assembly 'EntityFramework' or one of its dependencies. Strong name signature could not be verified. The assembly may have been tampered with, or it was delay signed but not fully signed with the correct private key. (Exception from HRESULT: 0x80131045) 



WRN: Assembly binding logging is turned OFF. 
To enable assembly bind failure logging, set the registry value 
[HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1. 
Note: There is some performance penalty associated with assembly bind failure logging. 
To turn this feature off, remove the registry value  
[HKLM\Software\Microsoft\Fusion!EnableLog]. 



[FileLoadException: Could not load file or assembly 'EntityFramework' or one of its dependencies. Strong name signature could not be verified. The assembly may have been tampered with, or it was delay signed but not fully signed with the correct private key. (Exception from HRESULT: 0x80131045)] 

[FileLoadException: Could not load file or assembly 'EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. Strong name signature could not be verified. The assembly may have been tampered with, or it was delay signed but not fully signed with the correct private key. (Exception from HRESULT: 0x80131045)] 
System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +0 
System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +34 
System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +152 
System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean forIntrospection) +77 
System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +16 
System.Reflection.Assembly.Load(String assemblyString) +28 
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +38 

[ConfigurationErrorsException: Could not load file or assembly 'EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. Strong name signature could not be verified. The assembly may have been tampered with, or it was delay signed but not fully signed with the correct private key. (Exception from HRESULT: 0x80131045)] 
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +752 
System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() +218 
System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) +130 
System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) +170 
System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies() +91 
System.Web.Compilation.BuildManager.CallPreStartInitMethods(String preStartInitListPath) +258 
System.Web.Compilation.BuildManager.ExecutePreAppStart() +135 
System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) +516 

[HttpException (0x80004005): Could not load file or assembly 'EntityFramework,  Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. Strong name signature could not be verified. The assembly may have been tampered with, or it was delay signed but not fully signed with the correct private key. (Exception from HRESULT: 0x80131045)] 
System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +9874840 
System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +101 
System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +254 

请指教,我已搜索并搜索到没有结束! - 我正在努力解决这个问题以及寻找什么。

回答

1

看来您的主机1 & 1不会安装.Net 4.5。 如果您想使用EF 5.0.0.0,则需要此版本的.Net。

+0

谢谢您的回复。它支持4-4.5,我检查过。我不确定此问题的原因可能是什么 – KyleK

+0

请确保您发布的位置的\ bin目录中有一个EntityFramework程序集。 – dgarbacz

1

在我的情况下,entityframework.dll文件的数字签名无法识别,

我通过卸载并重新安装的NuGet实体框架包解决了这个问题,再版的项目,一切返工。 (如果您不使用nuget,您可以删除参考并重新添加它)

相关问题