c# - 无法识别的标记前缀或设备筛选器 (Visual Studio 2010)

标签 c# asp.net visual-studio-2010 ajaxcontroltoolkit

我是第一次尝试 Visual Studio 2010 (Asp.Net 4.0)。我想用Ajax控件,主要是ComboBox控件。

我遵循了本 link 中提到的分步程序下载并安装 AjavControlToolkit。

我也关注了这个link了解将 ComboBox 添加到我的网页的步骤。

但无论我做什么,控件下都有一条绿线,我收到错误“无法识别的标签前缀或设备过滤器‘ajax’”。

我的 web.config 文件如下所示:

         <configuration>
       <system.web>
    <pages>
        <controls>
            <add tagPrefix="ajax" namespace="AjaxControlToolkit" assembly="AjaxControlToolkit"/>
            <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
            <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
        </controls>
    </pages>
    <compilation debug="true" targetFramework="4.0">
        <assemblies>
            <add assembly="System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
            <add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
            <add assembly="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/></assemblies></compilation>
  </system.web>
    </configuration>

aspx 页面如下所示:

     <form id="form1" runat="server">
       <div>
        <asp:ScriptManager ID="sm" runat="server"></asp:ScriptManager>
        <ajax:ComboBox runat="server" AutoCompleteMode="SuggestAppend">
          <asp:ListItem>ddd</asp:ListItem>
          <asp:ListItem>fff</asp:ListItem>
          <asp:ListItem>gggg</asp:ListItem>
          <asp:ListItem>hhhhh</asp:ListItem>
        </ajax:ComboBox>    
       </div>
    </form>

我什至尝试从 C:\Documents and Settings\xxx\Application Data\Microsoft\VisualStudio\10.0\ReflectedSchemas 位置删除架构文件。

请帮助我成功实现 Combobox 控件。 谢谢!

已编辑:

作为一种不同的方法,我创建了一个新网站并使用 NuGet 安装了最新版本的 AjaxControlToolkit。我重建了解决方案。我仍然无法在智能感知中看到 Ajax 控件。 实现它还有什么需要做的吗?请帮忙!!

最佳答案

如果您使用的是 Visual Studio 2010,那么我建议从这篇博文 (link) 中所示的 Nuget 下载 AJAXControlToolkit。

我昨天无意中遇到了同样的问题,有效的方法是将前缀更改为“ajaxToolkit”,并为脚本管理器做同样的事情,正如 Stephen Walter 在本文 (link) 中所展示的那样。请使用 ToolScriptManager 而不是 ScriptManager。

<ajaxToolkit:ToolScriptManager id="id12" runat="server"/>

关于c# - 无法识别的标记前缀或设备筛选器 (Visual Studio 2010),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9428305/

相关文章:

c# - 从 C# 属性 getter 返回枚举

c# - 创建自定义 wpf 事件

c# - 动态设置PDF文件名

asp.net - SqlCacheDependency 不工作

visual-studio - 在 Visual Studio 中添加和删除文件 - 编译错误

c++ - 在 Matlab 2013a 中编译和运行 mex

c# - 我如何知道新的 MDI 表单已添加到父 MDI 表单中?

ASP.NET JSON Web token "401 Unauthorized"

ASP.NET 2.0 和 4.0 在表单例份验证中似乎以不同方式处理根 url

.net - VS 2010 中项目不可用错误