当我尝试在Visual Studio 2008中进行调试时,我收到以下错误。我已经清理了ASP.NET临时文件夹并重新启动了VS.我还删除了所谓的破坏参考并将其添加回来。但似乎没有任何效果。有没有人遇到类似情况并且有解决方案吗?
无法加载文件或程序集 '“GCS.Common(asif mohammed's 冲突的副本2010-01-29)“'或一个 它的依赖关系。给定的 程序集名称或代码库无效。 (来自HRESULT的异常:0x80131047)
[FileLoadException:无法加载 文件或程序集'“GCS.Common(asif 穆罕默德的冲突副本 2010-01-29)“'或其中一个 依赖。给定的程序集名称 或代码库无效。 (例外 来自HRESULT:0x80131047)]
System.Reflection.AssemblyName.nInit(大会和放大器; assembly,Boolean forIntrospection, Boolean raiseResolveEvent)+0
System.Reflection.Assembly.InternalLoad(字符串 assemblyString,证据 assemblySecurity,StackCrawlMark& stackMark,布局forIntrospection) +114 System.Reflection.Assembly.Load(String assemblyString)+28
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(字符串 assemblyName,布尔starDirective) 46[ConfigurationErrorsException:可以 不加载文件或程序集'“GCS.Common (asif mohammed的冲突副本 2010-01-29)“'或其中一个 依赖。给定的程序集名称 或代码库无效。 (例外 来自HRESULT:0x80131047)]
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(字符串 assemblyName,布尔starDirective) +613 System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() +203 System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai)+105
System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig)+178
System.Web.Compilation.BuildProvidersCompiler..ctor(VirtualPath configPath,布尔值 supportLocalization,String outputAssemblyName)+54
System.Web.Compilation.CodeDirectoryCompiler.GetCodeDirectoryAssembly(VirtualPath virtualDir,CodeDirectoryType dirType, 字符串assemblyName,StringSet excludedSubdirectories,布尔 isDirectoryAllowed)+8809426
System.Web.Compilation.BuildManager.CompileCodeDirectory(VirtualPath virtualDir,CodeDirectoryType dirType, 字符串assemblyName,StringSet excludedSubdirectories)+128
System.Web.Compilation.BuildManager.CompileCodeDirectories() +265 System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() 320[HttpException(0x80004005):无法 加载文件或程序集'“GCS.Common (asif mohammed的冲突副本 2010-01-29)“'或其中一个 依赖。给定的程序集名称 或代码库无效。 (例外 来自HRESULT:0x80131047)]
System.Web.Compilation.BuildManager.ReportTopLevelCompilationException() +58 System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() +512 System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager,IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters)+729[HttpException(0x80004005):无法 加载文件或程序集'“GCS.Common (asif mohammed的冲突副本 2010-01-29)“'或其中一个 依赖。给定的程序集名称 或代码库无效。 (例外 来自HRESULT:0x80131047)]
System.Web.HttpRuntime.FirstRequestInit(HttpContext的 上下文)+8890735
System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext的 上下文)+85
System.Web.HttpRuntime.ProcessRequestInternal(的HttpWorkerRequest wr)+259
答案 0 :(得分:40)
“* * * * * * * *与####冲突的副本 - ## - ##”
好像你正在使用 dropbox 来同步文件,这个“冲突的副本”文件dropbox会创建,如果2台计算机离线更改同一个文件..当它们联机时,dropbox同步算法会混淆哪个文件是正确的一个,所以它保留两个文件重命名为这个名称模式。
在你的情况下:
这发生在项目的bin目录中,只是删除带有“冲突副本”部分的文件并保留另一个..如果你的项目从另一个位置引用dll,则删除两者,并重建解决方案。
答案 1 :(得分:12)
程序集加载问题是.NET开发人员需要学习解决的问题。有许多可能的原因,解决问题有两件事你需要。首先要了解.NET finds assesmblies的方式。其次是Fusion Log Viewer(Fuslogvw.exe
),它具有加载过程的知识,可以让您识别出工作和失败的原因。
通常,获得加载异常的原因是您想要的程序集不在GAC或探测路径中。它也可能是由于目标程序集没有为必要的平台构建(例如,64位进程无法加载仅为“x86”构建的程序集。)
答案 2 :(得分:3)
我是对的。这是我的版本控制软件造成的。当我得到最新版本时,它以某种方式添加了我所有程序集的附加副本(asif mohammed的冲突副本等等),在几乎考虑重新安装VS后,我只需要删除位于我的文件系统中的偷偷摸摸的dll。
感谢所有回复。了解如何装配装配工作,所以一切都不会丢失。
答案 3 :(得分:1)
完全同意理查德......
还有一点提示:阅读异常跟踪我认为“GCS.Common(asif mohammed的冲突副本2010-01-29)”是一个非常奇怪的名字,不是吗? ;-)
您是否重命名了某个文件,可能在bin文件夹中?
答案 4 :(得分:0)
这看起来不是一个非常好的程序集名称,但实际上它确实存在......
您似乎在某处手动指定此程序集,可能在web.config中?
如果是这样,请尝试使用Assembly Qualified Name,可以在web.config中找到微软放置的任何程序集的示例。不要担心版本/文化或密钥,只需“类型名称,程序集名称”通常就足够了。
e.g。而不是:
'"GCS.Common (asif mohammed's conflicted copy 2010-01-29)"
使用
'"GCS.Common (asif mohammed's conflicted copy 2010-01-29), [insert assembly filename less extension here]"
P.S。我的建议是使用与c#中的标识符相同的规则来命名程序集。从长远来看,你的生活会更轻松。