命名空间:CustomControls
类名:Literal:System.Web.UI.WebControls.Literal
<%@ Register TagPrefix="web" Namespace="CustomControls" %>
(我读了几个教程,这是注册它的方法之一,除了web.config等)
毕竟,对我来说没有智慧,更糟糕的是,当我尝试用它中的控件来运行页面时,我得到一个解析错误’unknown server tag:web’.
我使用“创建新项目”而不是新的网站,以防这种信息需要.
什么可能是我的问题?
提前致谢.
解决方法
Web应用程序项目方法
>创建一个新的ASP.Net Web应用程序.记下这个名字,我的名字叫做WebApplication2.如果您已经有一个现有的Web应用程序,这可能是双击项目的属性部分,并检查“组件名称”属性,记下它.
>在名为Literal.cs的Web应用程序中创建一个新的类
>将类似于以下类的代码放入类defenition中:
namespace CustomControls { public class Literal : System.Web.UI.WebControls.Literal { } }
<%@ Register assembly =“WebApplication2”namespace =“CustomControls”tagprefix =“web”%>
如果您的程序集名称不同,请在此处更改.我注意到,当我在VB.Net中这样做时,命名空间是WebApplication1.CustomControls,而不是像C#中的CustomControls一样,很奇怪.
< web:Literal ID =“Literal1”runat =“server”Text =“test”/>
分项目方法
>创建一个新的空的网站(ASP.Net).
>为解决方案添加一个名为CustomControls的新ASP.Net服务器控件库.
>添加一个新的类到名为Literal的新项目(我使用C#,所以我的文件名为Literal.cs).以下是我的超级基本代码,我相信应该匹配问题中描述的代码.
namespace CustomControls { public class Literal : System.Web.UI.WebControls.Literal { } }
>将CustomControls项目的引用添加到您的网站.
>将组件注册添加到aspx页面顶部:
<%@ Register assembly =“CustomControls”namespace =“CustomControls”tagprefix =“web”%>
>将新的控件实例添加到您的页面:
< web:Literal ID =“Literal1”runat =“server”Text =“test”/>
在App_Code方法
>创建一个新的空的网站(ASP.Net).
>添加一个新的类到App_Code文件夹Literal2(我使用C#,所以我的文件名为Literal2.cs).以下是我的超级基本代码,我相信应该匹配问题中描述的代码.我打电话给它2,所以你可以结合上面描述的方法,而不会得到编译错误
namespace CustomControls { public class Literal2 : System.Web.UI.WebControls.Literal { } }
>在aspx页面中注册app_code的程序集/命名空间,将以下行添加到顶部
<%@ Register Namespace =“CustomControls”Assembly =“__ code”tagprefix =“web”%>
>将新控件的实例添加到您的页面:
< web:Literal2 ID =“literal2”runat =“server”Text =“test2”/>
我使用视觉工作室测试了这一切,这一切对我来说都很好.