标签:
能加载文件或程序集“XXX”或它的某一个依赖项,系统找不到指定的文件
http://blog.csdn.net/pplcheer/article/details/7796211
做项目总是遇到各种的问题,今天就出现了这个问题。我在项目中使用EXT控件,当我添加一个刷新按钮时,报出了一个“未能加载文件或程序集“Coolite.Ext.Web”或它的某一个依赖项”的问题,后来我就重新找到我的COOLITE安装文件,将相应的DLL文件重新加载了一遍,问题解决了。
下面是我结合我的问题,查的一些资料,供大家参考。
一、
未能加载文件或程序集“Coolite.Ext.Web”或它的某一个依赖项
<!--访问授权-->
<httpModules>
<add name="AjaxRequestModule" type="Coolite.Ext.Web.AjaxRequestModule, Coolite.Ext.Web" />
</httpModules>
<httpHandlers>
解决方案:在bin目录项导入Coolite.Ext.Web.dll,是ajax控件
二、
未能加载文件或程序集 system.web.extensions解决方法System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项。系统找不到指定的文件。 很明显的错误是缺少程序集. 解决办法: 1,如果你的程序运行在你能控制的服务器上,那么安装asp.netajax就行了,这是System.Web.Extensions等dll做为GAC部署; 2,如果你的程序运行在虚拟主机上(无权安装程序),那么需要把System.Web.Extensions.dll和System.Web.Extensions.Design.dll (通常在C:\Program Files\Microsoft ASP.NET\ASP.NET 2.0 AJAX Extensions\v1.0.61025目录下)2个dll复制到你的web程序的bin目录下就行了,这是应用程序级别的部署。 同时注意要检查web.config中的代码
代码如下:
<assemblies>
<add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</assemblies>
<controls>
<add tagPrefix="atlas" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</controls>
三、
"未能加载文件或程序集“XXX”或它的某一个依赖项。系统找不到指定的文件。"
网上找了一下,方法如下:
很明显,缺少DLL文件,可能原因
1。DLL文件名与加载时的DLL文件名不一致,
2.DLL文件根本不存在,即出现丢失情况,
3.加载DLL路径错误,即DLL文件存在,但加载路径不正确
我查了自己项目的情况:
文件名一致,在WEB工程里面没有引用到那个程序集,我就不明白别的程序集都可以在程序启用的时候自动加载到web工程的bin文件夹下,就是那个引用不到,我就手动添加了进去,在运行,没有错误了;
我那个违法引用到的程序集是利用反射引用的,有影响吗?不知道,以后知道了再添加来吧?
--------------------------------------
调入ASP.NET做的网站程序出现以下类似的错误提示:
错误 1 未能加载文件或程序集“System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项。系统找不到指定的文件。 D:\Inetpub\wwwroot\XMLBBS\web.config 19
表现:
1、"System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项。系统找不到指定的文件。
2、后台系统即使添加引用后,不管此引用是系统还是用户,他们的属性和方法都不能识别;
解决方案一:
1、如果你的程序运行在你能控制的服务器上,那么安装asp.net ajax就行了,这是System.Web.Extensions等dll做为GAC部署;(一般安装ajax就能解决)
2、如果你的程序运行在虚拟主机上(无权安装程序),那么需要把System.Web.Extensions.dll和System.Web.Extensions.Design.dll
(通常在C:\Program Files\Microsoft ASP.NET\ASP.NET 2.0 AJAX Extensions\v1.0.61025目录下)2个dll复制到你的web程序的bin目录下就行了,这是应用程序级别的部署。
同时注意要检查web.config中的代码:
<assemblies>
<add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</assemblies>
<controls>
<add tagPrefix="atlas" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</controls>
解决方案二:
1.打开web.config,找到以下相关结点:
<add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
2.将这些结果注释掉或删除,再重新编译就可以了.
这是因为VS2005编译的AJAX是1.0的,而VS2008能同时编译AJAX1.0和其他版本的.所以会出现冲突.
解决方案三:
PublicKeyToken=31bf3856ad364e35”
或它的某一个依赖项。系统找不到指定的文件
将asp.net Ajax安装上,然后将X:\Program Files\Microsoft ASP.NET\ASP.NET 2.0 Ajax Extensions\v1.0.61025
目录下的System.Web.Extensions.Design.dll文件加到项目的bin目录下,文件复制到网站bin目录 下后再次运行,
安装了asp.net Ajax后会有三个dll文件
System.Web.Extensions.Design.dll
AjaxExtensionsToolbox.dll
System.Web.Extensions.dll
一般应该将这三个文件都添加到项目的bin目录下,要保险的话,全部复制进去吧
能加载文件或程序集“XXX”或它的某一个依赖项,系统找不到指定的文件
标签:
原文地址:http://www.cnblogs.com/davytitan/p/4648088.html