【发布时间】:2018-09-03 17:16:11
【问题描述】:
错误说明:
无法加载文件或程序集 'System.Data.DataSetExtensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' 或 它的依赖项之一。文件或目录已损坏并且 不可读。 (来自 HRESULT 的异常:0x80070570)'
装配负载跟踪:以下信息可能有助于 确定为什么程序集 'System.Data.DataSetExtensions, 版本=4.0.0.0,文化=中性,PublicKeyToken=b77a5c561934e089' 无法加载。
警告:程序集绑定日志记录已关闭。 要启用程序集绑定失败日志记录,请将注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) 设置为 1。 注意:有一些与程序集绑定失败日志相关的性能损失。 要关闭此功能,请删除注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog]。
堆栈跟踪:
[BadImageFormatException: 无法加载文件或程序集 'System.Data.DataSetExtensions,版本 = 4.0.0.0,文化 = 中性, PublicKeyToken=b77a5c561934e089' 或其依赖项之一。文件 或目录已损坏且无法读取。 (HRESULT 的例外情况: 0x80070570)] System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean for Introspection, Boolean 抑制安全检查)+0 System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef,证据 assemblySecurity,RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean for Introspection, Boolean 抑制安全检查)+225 System.Reflection.RuntimeAssembly.InternalLoad(字符串 assemblyString,证据 assemblySecurity,StackCrawlMark& stackMark, IntPtr pPrivHostBinder,自省布尔值)+110 System.Reflection.RuntimeAssembly.InternalLoad(字符串 assemblyString,证据 assemblySecurity,StackCrawlMark& stackMark, Boolean for Introspection) +22 System.Reflection.Assembly.Load(String assemblyString) +34 System.Web.Configuration.CompilationSection.LoadAssemblyHelper(字符串 assemblyName, Boolean starDirective) +48
[ConfigurationErrorsException: 无法加载文件或程序集 'System.Data.DataSetExtensions,版本 = 4.0.0.0,文化 = 中性, PublicKeyToken=b77a5c561934e089' 或其依赖项之一。文件 或目录已损坏且无法读取。 (HRESULT 的例外情况: 0x80070570)] System.Web.Configuration.CompilationSection.LoadAssemblyHelper(字符串 程序集名称,布尔星指令)+729 System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo 艾)+69 System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection 压缩配置)+226 System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies() +73 System.Web.Compilation.BuildManager.CallPreStartInitMethods(字符串 preStartInitListPath, Boolean& isRefAssemblyLoaded) +321 System.Web.Compilation.BuildManager.ExecutePreAppStart() +170 System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, 异常 appDomainCreationException) +734
[HttpException (0x80004005): 无法加载文件或程序集 'System.Data.DataSetExtensions,版本 = 4.0.0.0,文化 = 中性, PublicKeyToken=b77a5c561934e089' 或其依赖项之一。文件 或目录已损坏且无法读取。 (HRESULT 的例外情况: 0x80070570)] System.Web.HttpRuntime.FirstRequestInit(HttpContext 上下文)+525 System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext 上下文)+118 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest WR,HttpContext 上下文)+708
场景:
在 IIS 上发布的应用程序上弹出此错误,但本地副本在同一台机器上工作正常。
开发环境:
Visual Studio 2017,MS SQlServer 2014,实体框架代码优先。
观察:
新发布的版本有这个错误,但以前发布的版本可以正常工作。本地副本工作正常,在同一台机器上没有任何问题。
试过了:
Could not load file or assembly 'System.Data.DataSetExtensions, Version=3.5.0.0
[Could not load file or assembly 'System.Data.DataSetExtensions
【问题讨论】:
-
您能否尝试删除临时 asp.net 文件,例如:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET(链接可能与您不同)再试一次?
-
@ErayBalkanli 好的,让我检查一下...
-
@ErayBalkanli 试过了......没有运气......
-
请注意,您的错误显示版本 = 4.0.0.0。您是否在发布机器上安装了相同的 .net 版本?此外,如果您的解决方案中有多个项目,请检查它们是否都针对相同版本的 DLL。
-
@RodrigoWerlang 感谢您的建议。正如我所提到的,开发和发布的机器是相同的。此外,本地版本和所有以前发布的版本都可以正常工作。只有最新的发布在发布后突然显示此错误
标签: sql-server visual-studio entity-framework-6 visual-studio-2017 sql-server-2014