逐梦论坛's Archiver

shillan 发表于 2010-10-25 22:04

未能加载文件或程序集system.web.extensions解决方法

[b]现象:[/b]调试asp.net做的网站程序出现以下类似的错误提示:
  未能加载文件或程序集“system.web.extensions, version=1.0.61025.0, culture=neutral, publickeytoken=31bf3856ad364e35”或它的某一个依赖项。系统找不到指定的文件。 d:\inetpub\wwwroot\xmlbbs\web.config 19
如图:[attach]2407[/attach]

[b]表现:
[/b]1、"system.web.extensions, version=1.0.61025.0, culture=neutral, publickeytoken=31bf3856ad364e35”或它的某一个依赖项。系统找不到指定的文件。
2、后台系统即使添加引用后,不管此引用是系统还是用户,他们的属性和方法都不能识别。

[b]解决方案一:[/b]
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>
  
[b]解决方案二:[/b]
1.打开web.config,找到以下相关结点:
<add assembly="system.web.extensions, version=3.5.0.0, culture=neutral, publickeytoken=31bf3856ad364e35"/>
     <add assembly="system.web.extensions, version=1.0.61025.0, culture=neutral, publickeytoken=31bf3856ad364e35"></add>
     <add assembly="system.core, version=3.5.0.0, culture=neutral, publickeytoken=b77a5c561934e089"/>
     <add assembly="system.data.linq, version=3.5.0.0, culture=neutral, publickeytoken=b77a5c561934e089"/>
     <add assembly="system.web.extensions, version=3.5.0.0, culture=neutral, publickeytoken=31bf3856ad364e35"/>
     <add assembly="system.core, version=3.5.0.0, culture=neutral, publickeytoken=b77a5c561934e089"/>
     <add assembly="system.data.linq, version=3.5.0.0, culture=neutral, publickeytoken=b77a5c561934e089"/>
2.将这些结果注释掉或删除,再重新编译就可以了.
这是因为vs2005编译的ajax是1.0的,而vs2008能同时编译ajax1.0和其他版本的.所以会出现冲突
  
[b]解决方案三:
[/b]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目录下,要保险的话,全部复制进去吧

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.