2

我扩展了一个服务器控件(不是用户控件)并将代码放在我的 app_code 文件夹中。我想在网络配置中添加一个标签前缀,但是

<add tagPrefix="cc1" namespace="mynamespace" />

<add tagPrefix="cc1" namespace="mynamespace" assembly="currentwebsitename" />

不工作。我收到此错误:错误 147 Unknown server tag 'cc1:Control'

4

2 回答 2

4

要注册 App_Code 文件夹中的服务器控件,您只需要标签前缀和命名空间。所以在 web.config 中它看起来像这样......

<add tagPrefix="cc1" namespace="mynamespace"/>

在一个页面中它看起来像这样......

<%@ Register TagPrefix="cc1" Namespace="mynamespace" %>

需要注意的一个问题是,当您将新项目添加到 App_Code 文件夹时,默认情况下网站项目根本不包含任何名称空间,因此您需要明确确保您的控件具有名称空间。

于 2009-10-16T15:55:54.770 回答
1

您要么需要将控件放入名为“currentwebsitename.dll”的 DLL 中(如果您希望它以第二种方式工作),或者您需要通过src属性指定源(如果您想以第一种方式进行):

<add tagPrefix="cc1" namespace="mynamespace" src="app_code/control_name_here"/>

尝试阅读这两篇文章:

http://msdn.microsoft.com/en-us/library/sbz9etab.aspx

http://msdn.microsoft.com/en-us/library/yhzc935f.aspx

于 2009-10-16T15:14:26.587 回答