AjaxControlToolkit.CalendarExtender和System.Web.Extentions版本错误

时间:2009-11-17 16:43:59

标签: visual-studio ajaxcontroltoolkit

我的开发箱上有VS 2005,2008。

其他只安装了2005的开发人员的新项目。当我构建它时,我得到错误。

  

错误1正在对汇编进行间接引用   System.Web.Extensions版本3.5.0.0,其中包含   'AjaxControlToolkit.CalendarExtender'。该项目引用了先前的   System.Web.Extensions版本1.0.61025.0的版本。使用   'AjaxControlToolkit.CalendarExtender',您必须替换引用   到版本为3.5.0.0或更高版本的System.Web.Extensions。

当我将Web.Extentions的版本更改为3.5时,我得到另一个失败

  

无法加载文件或程序集'AjaxControlToolkit,   版本= 1.0.20229.23876,文化=中立,   PublicKeyToken = 28f01b0e84b6d53e'或其依赖项之一。该   找到程序集的清单定义与程序集不匹配   参考。 (HRESULT异常:0x80131040)

我应该更改公钥:

  

add assembly =“System.Web.Extensions,Version = 1.0.61025.0,   Culture = neutral,PublicKeyToken = 31bf3856ad364e35“

到新的,或者这是错误的做法。服务器没有3.5运行时。

TIA

1 个答案:

答案 0 :(得分:0)

如果您的服务器没有3.5运行时并且您无法安装它,我想您必须坚持使用1.0.61025.0版本的System.Web.Extensions。

我猜你遇到的问题是因为你使用的AjaxControlToolkit dll是用3.5运行时构建的。因此,您的项目直接引用1.0.6 ...版本,并通过AjaxControlToolkit引用引用3.5版本,并且变得困惑。您可以尝试下载工具包源并从头开始构建它,引用1.0.61025.0版本的System.Web.Extensions。然后确保引用此工具包而不是默认工具包。

http://ajaxcontroltoolkit.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=11121

此外,您可以尝试确保在项目的引用和web.config文件中对System.Web.Extensions DLL版本号的所有引用都是一致的。请注意,如果选择了引用,则可以在“属性”面板中将“SpecificVersion”属性切换为True;据推测,这使得.NET对它选择的DLL版本更加挑剔。