注册自定义控件失败

2023-11-30

我尝试在 webconfig 文件中注册我的用户控件,因为我收到“元素不存在”错误,但当我尝试在 webconfig 中注册它们时,我收到以下错误:

Invalid or missing attributes found in the tagPrefix entry. For user control, you must also specify 'tagName' and 'src'. For custom control, you must also specify 'namespace', and optionally 'assembly'

以下是 Web 配置文件中的代码:

<pages>
  <controls>
    <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add tagPrefix="IPAMControl" tagName="contact_us" namespace="IPAM.Website.Controls" src="~/controls/contact_us.ascx" />
    <add tagPrefix="IPAMControl" tagName="erh_list" namespace="IPAM.Website.Controls" src="~/controls/erh_list.ascx" />
    <add tagPrefix="IPAMControl" tagName="header" namespace="IPAM.Website.Controls" src="~/controls/header.ascx" />
    <add tagPrefix="IPAMControl" tagName="footer" namespace="IPAM.Website.Controls" src="~/controls/footer.ascx" />
    <add tagPrefix="IPAMControl" tagName="main_tnavbar" namespace="IPAM.Website.Controls" src="~/controls/main_tnavbar.ascx" />
    <add tagPrefix="IPAMControl" tagName="program_header" namespace="IPAM.Website.Controls" src="~/controls/program_header.ascx" />
    <add tagPrefix="IPAMControl" tagName="program_list" namespace="IPAM.Website.Controls" src="~/controls/program_list.ascx" />
    <add tagPrefix="IPAMControl" tagName="signup_section" namespace="IPAM.Website.Controls" src="~/controls/signup_section.ascx" />
    <add tagPrefix="IPAMControl" tagName="speaker_list" namespace="IPAM.Website.Controls" src="~/controls/speaker_list.ascx" />
    <add tagPrefix="IPAMControl" tagName="track" namespace="IPAM.Website.Controls" src="~/controls/track.ascx" />
  </controls>
</pages>

存在此问题的页面也会引用母版页(如果这很重要的话):

<%@ Page Language="C#" AutoEventWireup="true" MasterPageFile="~/programs/MasterProgram.master" CodeBehind="~/programs/wim2011/default.aspx" Inherits="IPAM.Website.programs.wim2011._default" %>

它们都在自己的文件夹中。

请帮忙。


摆脱命名空间属性,因为它会使 ASP.NET 混淆您是尝试注册用户控件还是自定义控件。

用户控制:

<add tagPrefix="SomeTagPrefix" src="~/Controls/SomeControl.ascx" tagName="SomeTagName"/>

自定义控制:

<add tagPrefix="SomeTagPrefix" namespace="SomeNamespace" assembly="SomeAssembly"/>

所以,在你的例子中:

<add tagPrefix="IPAMControl" tagName="track" src="~/controls/track.ascx" />

在 ASPX/ASCX 上,您可以像这样使用它:

<IPAMControl:track id="ipamTrack" runat="server" />

See here了解更多信息。

EDIT

为了证明这是有效的 - 我做了以下操作:

  1. 创建新的 Web 应用程序
  2. 在 Web 应用程序的根目录中创建名为“Controls”的新文件夹
  3. 添加了一个名为“MyUserControl.ascx”的新“Web 用户控件”
  4. 修改web.config添加控件注册
  5. 修改Default.aspx以添加该控件。

一切都很好。

这是用户控件:

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="MyUserControl.ascx.cs" Inherits="WebApplication1.Controls.MyUserControl" %>
<span>Hi, im a user control, how are you?</span>

这是我编辑的 web.config 部分:

<pages>
      <controls>
        <add tagPrefix="MyControls" tagName="MyUserControl" src="~/Controls/MyUserControl.ascx"/>
      </controls>
    </pages>

这是我所做的 Default.aspx 更改:

<MyControls:MyUserControl id="myUserControl" runat="server" />

并且页面正确呈现。

现在,除非我在这里所做的与您尝试执行的方式不同,否则您必须有其他代码/错误干扰此操作。

不知道我还能提供多少帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

注册自定义控件失败 的相关文章

随机推荐

  • 在 MS Access 中将包含多个值的多行连接成单行

    我正在尝试创建简单的需求管理数据库 基本上我有如下两张表 Contract requirements 有 2 列 CR ReqID Description reqCR1 Contract req description 1 reqCR2 C
  • 为什么 HTML/JSP 页面需要 DOCTYPE?

    为什么我们在 HTML JSP 页面中需要 doctype 页面似乎没有它就可以工作 Zeldman wrote 根据 HTML 和 XHTML 标准 DOCTYPE 文档类型 的缩写 声明 通知验证者 您正在使用哪个版本的 X HTML
  • NativeScript WebView加载src文档中的本地资源

    我正在加载本地 html 文件作为 NativeScript WebView 组件的 src html 文件中包含引用 javascript 文件的脚本标签 这些文件也是本地资源 捆绑在应用程序中 html 文件可以正常加载到 WebVie
  • Node.JS 服务器发送事件:在 res.end() 后路由继续运行,导致 ERR_STREAM_WRITE_AFTER_END 错误

    我正在开始使用服务器发送事件 SSE 因为我的 Web 应用程序需要从服务器接收实时更新 它不需要向服务器发送任何内容 因此选择 SSE 而不是 Websockets 阅读了一些示例后 我有以下代码 在我的服务器上 在 src router
  • GSP页面中的递归

    我有一个域名 class Node String nodeId String label Node parent 在 GSP 页面中 我想从根开始并打印其所有子项 请注意 我引用了父项而不是子项 知道如何做到这一点吗 我很抱歉 但我是新人
  • 通过字符串名称获取属性值

    请考虑这个类 public static class Age public static readonly string F1 18 25 public static readonly string F2 26 35 public stat
  • 如何通过检查元素的值从 ArrayList 中删除元素?

    我有 ArrayList 我想从中删除具有特定值的元素 for eg ArrayList
  • sphinx 自动摘要:“无法导入 Child.model”(继承的实例属性)

    我在使用 sphinx 和自动摘要时遇到问题 显然 sphinx 无法记录继承的实例属性 由于某种原因 产生的错误是导入错误 蟒蛇代码 class Base Base class def init self kwargs Init self
  • 当机器人加入服务器时发送消息

    我想每次当机器人被邀请到服务器时发送一条消息 然后它应该写这样的内容 你好 这是我的不和谐机器人 到目前为止 我有这段代码 它不会产生任何错误 但也不会发送消息 bot event async def on server join ctx
  • 是否可以解决“为可变参数参数创建 T 的通用数组”编译器警告?

    这是相关代码的简化版本 一个泛型类使用另一个具有泛型类型参数的类 并且需要将泛型类型之一传递给具有可变参数参数的方法 class Assembler
  • Microsoft BotFramework-WebChat 滚动问题

    我正在使用微软 BotFramework WebChat 但我在让它正确滚动时遇到问题 通常 当机器人响应时 用户被迫手动滚动到聊天日志的底部 我找不到任何有关挂钩的文档 可以让我调用 API 来滚动它 有没有办法让聊天窗口自动滚动 HTM
  • C++ 中 int 的 ostringstream 问题

    我希望输出以下代码hello5 相反 它只输出hello 尝试将 int 输出到 似乎是一个问题ostringstream 当我直接输出相同的内容时cout我收到了预期的输入 在 Snow Leopard 上使用 XCode 3 2 Tha
  • 带复选框的 Javafx 8 Tableview 选择

    我已经设置了一个启用多选的表视图 并尝试将插入列中的复选框的侦听器附加到表的选择模型 checkBoxTableColumn setCellValueFactory cellData gt CheckBox checkBox new Che
  • java.lang.IndexOutOfBoundsException

    我使用 ArrayList 来存储关卡中每个矩形的 阴影 但是当我像这样迭代时 for int n 0 n lt shadows size n g2d fillPolygon shadows get n 0 g2d fillPolygon
  • SpeechToText 并运行 ACTION_CHECK_TTS_DATA 意图

    我已经实施了TextToSpeech完全按照中提到的集成这篇博文 在我将它添加到我的程序中后 它现在干扰了我的其他程序intents 例如 项目清单 用户启动应用程序 用户调用加载活动 用户选择要加载的文件 活动返回 fileanme 以在
  • Kubernetes 不将数据复制到已安装的卷中

    根据这里的文档 https docs docker com storage volumes 如果您启动一个创建新卷的容器 如上所述 并且该容器在要挂载的目录 例如上面的 app 中具有文件或目录 则该目录的内容将被复制到该卷中 然后容器安装
  • 在 PYTHON 中向文件添加时间戳

    我可以使用 os rename 重命名文件 没有任何问题 错误 但是当我尝试重命名一个文件并添加时间戳时 它会抛出 win3 错误或 win123 错误 尝试了所有组合但没有运气 任何人都可以帮忙 成功运行代码 usr bin python
  • 通过 Java 与 Apple 推送通知服务器进行 SSL 握手

    您好 我正在尝试使用 Java 向我的设备发送推送消息 但我在建立 ssl 连接时已经遇到问题了 这是到目前为止的代码 KeyStore keyStore KeyStore getInstance PKCS12 InputStream ke
  • 如何在CSS中获取背景图像上的扫描线

    我有一个整页背景图像 我想在其上覆盖扫描线 我想复制我在二十世纪九十年代的数字艺术中看到的更传统的对角线扫描线效果 例如实现here在 Bootstrap 的模式掩码 5 中 我看过一些关于对角线扫描线的教程 但一直找不到这样的东西 我将如
  • 注册自定义控件失败

    我尝试在 webconfig 文件中注册我的用户控件 因为我收到 元素不存在 错误 但当我尝试在 webconfig 中注册它们时 我收到以下错误 Invalid or missing attributes found in the tag