安装.net 3.5 sp1后System.Web.Extension的问题

时间:2009-11-20 14:12:05

标签: .net

我有一个包含多个类库和网站的解决方案。该解决方案内置于.net 2.0 Visual Studio 2005中,后来转换为.net 3.5(所有类库和网站都针对3.5框架)。 在安装更新之前,网站运行良好。之后,构建失败 using System.Web.Extensions; 错误消息为:“The type of namespace Extensions does not exist in the namespace System.Web (are you missing an assembly reference?)”。

我查看了.net 2.0框架文件夹,而System.Web.Extensions .dll确实没了。但是C:\ Program Files \ Reference Assemblies \ Microsoft \ Framework \ v3.5文件夹具有.dll。 GAC显示了两个System.Web.Extensions,旧的1.06版本和新的3.5版本。我将web.config重新绑定到新版本。

我检查了我的引用,删除了旧的引用,并添加了对.3.5版本的System.Web.Extensions的引用。它不起作用,在同一个地方构建失败。

然后我将.dll复制到我网站的bin中,然后将引用指向那里。这也没有用,解决方案没有构建,当我查看引用时,它似乎没有对bin文件夹中的文件的引用。

注意:系统安装了.net 1.1,Visual Studio 2003和2005。

有人能指出我能做些什么来解决这个问题吗? 我知道卸载3.5 sp1更新会修复它,但我宁愿保留它。

谢谢 DEB

2 个答案:

答案 0 :(得分:0)

  1. Asp.NET .NET Framework 2.0的Ajax扩展是独立的。 .NET Framework 2.0中不包含Ajax扩展。你需要单独安装它。希望它已经安装在你的机器上。

  2. 你应该保留旧的dll,不要升级,因为它需要对代码进行大量更改。 我建议你用升级的项目保留旧的dll参考。

  3. 确保您已正确引用dll 要么 删除现有引用并使用旧的system.web.extension dll添加引用。

  4. 它适用于.NET Framework 3.5。

    编辑: 1.首先从项目中删除新版本引用 2.重新安装.NET Framework 2.0的Ajax扩展 http://www.microsoft.com/downloads/details.aspx?FamilyID=ca9d90fa-e8c9-42e3-aa19-08e2c027f5d6&displaylang=en
    3.使用旧版本的dll文件添加引用 4.确保web.config具有正确的引用。

答案 1 :(得分:0)

您是否检查了web.config中添加的程序集?是否添加了System.Web.Extensions 3.5?

<compilation debug="true">
    <assemblies>
        <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
        <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    </assemblies>
</compilation>