仰天一笑(Ansonxuyu),专业从事软件定制开发、Web软件开发,网站建设,网络推广,APP开发,微博应用开发,微信应用开发,电子商务开发,物联网开发等技术。
互联网8年风雨,愿在此交朋识友,交流心得,分享技术知识(策划/研发/运营/推广/合作)!QQ:943530498


仰天一笑

昨日不悔,今日勿失,明日莫忧! —徐羽

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

在我们部署和实施的时候,很多开发的项目调用了ajax插件,导致项目项目发现未能加载文件或程序集的错误,这是由于服务器上没有安装Ajax的原因。

特别在项目部署的时候,特别麻烦,系统运行不了。

问题解决方法如下,供大家参考:


具体问题表现:
1、"System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项。系统找不到指定的文件。

2、后台系统即使添加引用后,不管此引用是系统还是用户,他们的属性和方法都不能识别;

解决方案一:

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目录下,要保险的话,全部复制进去吧  下载链接

ajaxdll.rar下载

 

解决方案二:


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"/>
     <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和其他版本的.所以会出现冲突.

posted on 2013-04-17 11:05  仰天一笑  阅读(18937)  评论(0编辑  收藏  举报