我的开发盒上有VS 2005,2008。
新项目从其他开发人员谁只有2005年安装。当我建立它我得到错误。
错误1正在间接引用程序集System.Web.Extensions版本3.5.0.0,该版本包含“AjaxControlToolkit. CalendarExtender”。此项目引用早期版本的System.Web.Extensions版本1.0.61025.0。若要使用“AjaxControlToolkit. CalendarExtender”,必须将对System.Web.Extensions的引用替换为版本3.5.0.0或更高版本。
当我将Web.extensions的版本更改为3.5时,又出现了一个错误
未能加载文件或程序集“AjaxControlToolkit,版本=1.0.20229.23876,区域性=neutral,PublicKeyToken=28f01b0e84b6d53e”或它的某一个依赖项。找到的程序集的清单定义与程序集引用不匹配。(HRESULT异常:0x80131040)
我是否应该更改以下项的公钥:
添加程序集=“系统.Web.扩展,版本=1.0.61025.0,区域性=非特定区域性,公钥标记=31bf3856ad364e35”
到较新的一个,或者这是错误的做法。服务器没有3. 5运行时。
短暂性脑缺血发作
1条答案
按热度按时间j8ag8udp1#
如果您的服务器没有3.5运行时并且您无法安装它,我想您必须坚持使用1.0.61025.0版本的System. Web. Extensions。
我猜您遇到的问题是因为您使用的AjaxControlToolkit dll是用3.5运行时构建的。因此,您的项目既直接引用了1.0.6...版本,又通过AjaxControlToolkit引用了3.5版本,这让您感到困惑。您可以尝试下载工具包源代码,然后从头构建它。引用System. Web. Extensions的1.0.61025.0版本。然后确保引用此工具包而不是默认工具包。
http://ajaxcontroltoolkit.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=11121
此外,您还可以尝试确保项目的引用和web.config文件中对System.Web.Extensions DLL版本号的所有引用都一致。请注意,如果选择了引用,则可以在“属性”面板中将“SpecificVersion”属性切换为True;大概这使得.NET对于选择哪个DLL版本更加挑剔。