【问题标题】:The type or namespace name UpdatePanel does not exist in the namespace System.Web.UI命名空间 System.Web.UI 中不存在类型或命名空间名称 UpdatePanel
【发布时间】:2012-03-25 11:39:16
【问题描述】:

我正在开发由另一位开发人员构建的针对 ASP.NET 3.5 的网站。我正在尝试围绕一些代码添加一个更新面板,但是每当我尝试这样做时,我都会在标题中发布错误。我试过包含 ajaxcontroltoolkit dll,但没有成功。

以下是来自网络配置文件的参考:

<compilation debug="true">
      <assemblies>
        <add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
        <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        <add assembly="System.Web.Abstractions, 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"/>
        <add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
        <add assembly="System.ServiceModel.Web, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        <add assembly="System.Data.Services.Client, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
        <add assembly="System.Data.Services.Design, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
        <add assembly="System.Data.Entity, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
      </assemblies>
    </compilation>

当我从 Visual Studio 2010 的工具箱中将 updatepanel 拖到页面上时,这是添加的 register 语句:

<%@ Register assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" namespace="System.Web.UI" tagprefix="asp" %>

我错过了什么?

【问题讨论】:

  • 检查您的Web.config 是否有错误。

标签: visual-studio-2010 asp.net-ajax updatepanel asp.net-3.5


【解决方案1】:

原来这是 Visual Studio 无法识别 System.Web.Extensions 引用的问题。为了解决,我按照以下步骤操作:

  1. 将目标框架更改为以前的版本(对我来说这是 2.0)
  2. 完成后,将目标框架改回原来的版本(我是 3.5)

Visual Studio 将确保您的 webconfig 具有所有适当的调整,您可以通过打开对象资源管理器并确保 System.Web.Extensions 出现在“查看容器”列表中来检查您的成功。

【讨论】:

  • 难以置信这个解决方案真的有效!我遇到了完全相同的问题,并将我的项目的框架版本从 4 改回 2,然后再改回 4,然后就出现了编译错误!
  • 我注意到当我从 Framework 4.0 切换到 Framework 4.5.1 时,对 System.Web.Extensions 的引用被删除了。阅读参考,问题就消失了。
  • 我从 4.6.1 => 4 => 4.6.1 开始。固定的!谢谢@Kyle
【解决方案2】:

请添加参考:System.Web.Extensions

【讨论】:

    【解决方案3】:

    也可以通过从工具箱中添加更新面板来解决此问题。构建,然后删除控件。

    【讨论】:

    • 适用于您已复制设计代码并粘贴到新项目上。只需添加一个虚拟更新面板并将其删除。
    猜你喜欢
    • 1970-01-01
    • 2012-06-19
    • 1970-01-01
    • 2012-05-28
    • 1970-01-01
    • 1970-01-01
    • 2018-05-09
    • 2022-01-11
    • 2021-10-15
    相关资源
    最近更新 更多