C#未能加载文件或程序集它的某一个依赖项。系统找不到指定的文件记录
起因:
使用vs添加引用直接引用本地的dll文件
代码运行生成没有报异常,运行调试的时候报“未能加载文件或程序集”
错误日志
=== 预绑定状态信息 === 日志: DisplayName = ESRI.ArcGIS.System, Version=10.2.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86 (Fully-specified) 日志: Appbase = file:///E:/Product2018_Server/ 日志: 初始 PrivatePath = E:\Product2018_Server\bin 调用程序集: ESRI.ArcGIS.Geometry, Version=10.2.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86。 === 日志: 此绑定从 default 加载上下文开始。 日志: 正在使用应用程序配置文件: E:\Product2018_Server\web.config 日志: 使用主机配置文件: C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet.config 日志: 使用 C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config 的计算机配置文件。 日志: 策略后引用: ESRI.ArcGIS.System, Version=10.2.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86 日志: 尝试下载新的 URL file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/root/f2091c4f/e28db9d4/ESRI.ArcGIS.System.DLL。 日志: 尝试下载新的 URL file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/root/f2091c4f/e28db9d4/ESRI.ArcGIS.System/ESRI.ArcGIS.System.DLL。 日志: 尝试下载新的 URL file:///E:/Product2018_Server/bin/ESRI.ArcGIS.System.DLL。 日志: 尝试下载新的 URL file:///E:/Product2018_Server/bin/ESRI.ArcGIS.System/ESRI.ArcGIS.System.DLL。 日志: 尝试下载新的 URL file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/root/f2091c4f/e28db9d4/ESRI.ArcGIS.System.EXE。 日志: 尝试下载新的 URL file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/root/f2091c4f/e28db9d4/ESRI.ArcGIS.System/ESRI.ArcGIS.System.EXE。 日志: 尝试下载新的 URL file:///E:/Product2018_Server/bin/ESRI.ArcGIS.System.EXE。 日志: 尝试下载新的 URL file:///E:/Product2018_Server/bin/ESRI.ArcGIS.System/ESRI.ArcGIS.System.EXE。
原因:
生成的时候没有把引用的dll文件复制到bin文件下,原因是引用dll时属性中的“复制本地”被设置为False,且不可更改
解决措施:
需要先将“嵌入互操作类型”的属性设置为False,再将“复制本地”的属性设置为True
这样在生成代码的时候bin文件就会有对应的dll文件

浙公网安备 33010602011771号