我扩展了一个服务器控件(不是用户控件)并将代码放在我的 app_code 文件夹中。我想在网络配置中添加一个标签前缀,但是
<add tagPrefix="cc1" namespace="mynamespace" />
和
<add tagPrefix="cc1" namespace="mynamespace" assembly="currentwebsitename" />
不工作。我收到此错误:错误 147 Unknown server tag 'cc1:Control'
我扩展了一个服务器控件(不是用户控件)并将代码放在我的 app_code 文件夹中。我想在网络配置中添加一个标签前缀,但是
<add tagPrefix="cc1" namespace="mynamespace" />
和
<add tagPrefix="cc1" namespace="mynamespace" assembly="currentwebsitename" />
不工作。我收到此错误:错误 147 Unknown server tag 'cc1:Control'
要注册 App_Code 文件夹中的服务器控件,您只需要标签前缀和命名空间。所以在 web.config 中它看起来像这样......
<add tagPrefix="cc1" namespace="mynamespace"/>
在一个页面中它看起来像这样......
<%@ Register TagPrefix="cc1" Namespace="mynamespace" %>
需要注意的一个问题是,当您将新项目添加到 App_Code 文件夹时,默认情况下网站项目根本不包含任何名称空间,因此您需要明确确保您的控件具有名称空间。
您要么需要将控件放入名为“currentwebsitename.dll”的 DLL 中(如果您希望它以第二种方式工作),或者您需要通过src属性指定源(如果您想以第一种方式进行):
<add tagPrefix="cc1" namespace="mynamespace" src="app_code/control_name_here"/>
尝试阅读这两篇文章: