- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个包含多个项目(类库和 Web 应用程序)的 .net visual studio 解决方案。
我做了一些重构,在项目之间移动文件、创建新项目、删除未使用的项目并重命名一些现有项目。
解决方案构建没有问题,但是当我运行 web 应用程序时,出现以下异常:
“无法加载文件或程序集‘XXX.YYY’或其依赖项之一。系统找不到指定的文件。”
名为XXX.YYY 的项目在重构中被删除,输出了一个名为XXX.YYY 的dll。但这并没有在应用程序的任何地方使用。我删除了 web 应用程序 obj 目录和 bin 文件夹并重建,但它仍然出现。
任何人都知道什么时候会发生这种情况,有任何提示吗??
更新:
更新我的问题。我将代码放置到另一台计算机上并从那里运行它,它成功构建并运行而没有发生此问题。所以这让我认为问题出在我的 PC 而不是代码库。也许我的电脑上缓存了一些东西。我确实删除了位于“C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files”的临时文件,但没有成功。
所以任何其他可能被缓存的内容或任何其他原因导致它出现在我的电脑上。
进一步更新
关于此的另一个更新。我在其他开发人员机器上运行了相同的代码,他运行它没有问题。所以肯定是我机器上的东西!在我们的机器上唯一不同的是,我在经典模式下使用应用程序的应用程序池运行 IIS7。另一个开发人员正在运行 IIS6。
2 条新信息。首先,在我的 web.config 中的 httpmodules 中,我必须先删除自定义 http 模块,然后再添加它。其他开发人员不必这样做。其次,我已经能够通过“hack”修复“无法加载文件或程序集‘XXX.YYY’或其依赖项之一”问题,这只是通过在我的项目中创建一个名为 XXX 的类库来实现的短期修复.YYY 并包括正在查找的类,它们都是自定义控件,即。继承自System.Web.UI.WebControls.WebControl。
任何进一步的想法....
最佳答案
有两个可能的原因。
1) 当你运行你的 webapp 时,你仍然在你机器上的某个地方使用旧的程序集。您的旧程序集引用了旧程序集“XXX.YYY”。
2) 您构建的最新二进制文件仍在引用旧程序集“XXX.YYY”。
要找出您的 Web 应用程序使用的程序集,如果您正在运行调试器,则可以从输出窗口中轻松找到它。它应该是输出的前几行。另一种方法是在调试期间在 VS.NET IDE 中打开模块窗口。
如果由于某些原因您无法调试它或者您在附加调试器时遇到问题,另一种更简单的方法是使用 fuslogvw .它为您提供了所有成功加载的程序集以及未能加载的程序集的确切位置。请确保您在 Windows 7 中以管理员身份运行 fuslogvw。
在您找出您的 webapp 成功加载了哪些程序集之后,您可以对这些程序集执行 ildasm 以查看它们正在引用哪些程序集。很遗憾,您需要一一检查。
我的猜测是,您成功加载的一些程序集实际上来自 ASP.NET 缓存或 GAC 中的某处。
关于c# - "Could not load file or assembly ' XXX.YYY ' or one of its dependencies. The system cannot find the file specified.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4576221/
在 CSS 中,我从来没有真正理解为什么会发生这种情况,但每当我为某物分配 margin-top:50% 时,该元素就会被推到页面底部,几乎完全消失这一页。我假设 50% 时,该元素将位于页面的中间位
我想在 MongoDB 中使用 Grails2.5 中的“ElasticSearch”插件。我的“BuildConfig.groovy”文件是: grails.servlet.version = "3
我有一个我想要处理的 OHLC 股票报价数组。 Open High Low Close Volume 2003-01-05
我尝试创建一个PreparedStatement: stmt = conn.prepareStatement("SELECT POLBRP, POLTYP, POLNOP, INCPTP, TRMTH
我的目录结构如下: root libA CMakeLists.txt ClassA.cpp libB CMakeLists.txt ClassB.cpp s
我是 DBMS 的新手。我在每个用户的不同 csv 文件中都有车辆痕迹。格式:名称,时间戳,纬度,经度,randomId。例如:user0,2008-10-2309:42:25,441972.6942
我需要为我的应用程序打上烙印,并且只需要自定义少量图像,代码库是相同的,只是生成的常量很少。 由于aapt 允许指定许多资源目录,有没有办法在Eclipse .classpath 文件中指定res 目
我希望在我的应用程序中实现 JWT,因为我正在通过引用以下内容对其进行一些研发:https://stormpath.com/blog/jwt-java-create-verify .当我尝试通过提取声
我正在尝试通过设置限制获取数据并根据时间戳对数据进行排序,但在运行应用程序时崩溃并显示此错误消息: 查询无效。在指定顺序之前不得指定起点。 我不知道为什么会这样。如何解决? 我需要数据序列和排序。
我正在使用Elasticsearch和Tire进行Rails3项目。当我尝试运行Elastic-search时,安装它后,出现以下错误: The stack size specified is too
我创建了一个简单的函数来执行 Http PUT 请求 - public string checkIfUserExists(string userName) { var endP
Java 安全管理器允许通过定义如下子句来指定某些代码段的权限: ... grant codebase http://foo.bar.com/test.jar { permission java
这更像是一种验证。 在 Oracle/Java 教程页面上,例如 this , 我一直看到catch 旁边的“specify”就好像它是另一个语句在异常处理中具有一些功能。 据我所知,“catch o
本文整理了Java中org.batfish.specifier.ZoneNameRegexInterfaceSpecifier类的一些代码示例,展示了ZoneNameRegexInterfaceSpe
我正在尝试运行以下命令: ionic cordova run android --device 但我收到以下错误 BUILD FAILED in 3s (node:3956) Unha
在不包含 viewport 元标记的网页上,大多数移动浏览器会将页面上的部分或全部字体“提升”到大于 css 指定的大小。例如,在移动版 Safari 上,7px 的指定大小将提升为类似 12px 的
嗨,我不了解 keras fit_generator 文档。 我希望我的困惑是理性的。 有一个batch_size还有分批训练的概念。使用 model_fit() ,我指定一个 batch_size
我使用 IProviderSearchContext 在 Sitecore 8.1(Lucene 搜索)中搜索特定项目,并获得每个项目的两个版本(en、ar)。我的问题是:我是否必须为每个查询指定:
Except in a declaration of a constructor, destructor, or conversion function, at least one defining-
使用 GooglePageSpeed 分析在线商店(Shopware)导致每个图像上出现许多“未指定到期时间”的线条。 我想知道是因为网络服务器 (nginx) 在所有图像的响应中添加了 Last-M
我是一名优秀的程序员,十分优秀!