设置自定义ASP.NET服务器控件TagPrefix的几种方法

简介: 方法一、在Web.config中配置,具体做法为:在Web.config文件的System.web节中添加如下代码 Code12  3     4  5          说明:assembly表示控件所在的程序集名称,namespace表示控件的命名空间,tagPrefix就是我们所要设置...

方法一、在Web.config中配置,具体做法为:在Web.config文件的System.web节中添加如下代码

img_1c53668bcee393edac0d7b3b3daff1ae.gif img_405b18b4b6584ae338e0f6ecaf736533.gif
1<pages>
2  <controls>
3     <add assembly="ServerControl" namespace="ServerControl" tagPrefix="sc"/>
4  </controls>
5</pages>

         说明:assembly表示控件所在的程序集名称,namespace表示控件的命名空间,tagPrefix就是我们所要设置的项了

方法二、在使用该控件的页面添加<%Register%>指令,如下

img_1c53668bcee393edac0d7b3b3daff1ae.gif img_405b18b4b6584ae338e0f6ecaf736533.gif
1img_405b18b4b6584ae338e0f6ecaf736533.gifimg_1c53668bcee393edac0d7b3b3daff1ae.gif<%@ Register assembly="ServerControl" namespace="ServerControl" tagprefix="sc" %>

 说明:assembly表示控件所在的程序集名称,namespace表示控件的命名空间,tagPrefix就是我们所要设置的项了

方法三、通过Attribute来指定tagPrefix,例如在控件类添加如下Attribute

img_1c53668bcee393edac0d7b3b3daff1ae.gif img_405b18b4b6584ae338e0f6ecaf736533.gif
[assembly: TagPrefix("ServerControl", "scsc")]
namespace ServerControl
{
    [ToolboxData("
<{0}:EmailInput runat=server></{0}:EmailInput>")]
    public class EmailInput : CompositeControl
    {

说明:即使这样定义了,每个页面也都要添加<%Register%>指令,这样只是提供了统一的tagPrefix,实质上还是第二种方法

方法四、在控件项目中添加属性文件"Assembly.cs"中添加如下代码来自定义控件的前缀:

img_1c53668bcee393edac0d7b3b3daff1ae.gif img_405b18b4b6584ae338e0f6ecaf736533.gif
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Web.UI;
[assembly: TagPrefix("ServerControl","scsc")]

说明:即使这样定义了,每个页面也都要添加<%Register%>指令,这样只是提供了统一的tagPrefix,实质上还是第二种方法

 

最后对上面的四种方法进行说明:

  • 在Web.config中进行自定义是属于应用程序级别的定义,只注册一次即可对整个应用程序有效。其他三种方法都得在引用该控件的页面添加<%Register%>指令
  • asp.net定义tagPrefix的检测顺序是:assemblyInfo.cs---->控件中的attribute装饰----->webconfig中的配置,也就是说,如果这几种方法您都设置了,那么asp.net 将会采用webconfig的设置方式!相信这也是asp.net覆盖的简单道理了!
  • asp.net的自带控件采用了第一种方法,即在 web.config中进行了配置,将tagPrefix配置成了asp,如果您看着不爽,可以改掉它。

转自:http://www.cnblogs.com/light5211/archive/2009/01/08/1371914.html

博客园大道至简

http://www.cnblogs.com/jams742003/

转载请注明:博客园

目录
相关文章
|
6天前
|
缓存 监控 定位技术
|
5天前
|
弹性计算 异构计算
2024年阿里云GPU服务器多少钱1小时?亲测价格查询方法
2024年阿里云GPU服务器每小时收费因实例规格不同而异。可通过阿里云GPU服务器页面选择“按量付费”查看具体价格。例如,NVIDIA A100的gn7e实例为34.742元/小时,NVIDIA A10的gn7i实例为12.710156元/小时。更多详情请访问阿里云官网。
36 2
|
7天前
|
人工智能 弹性计算 关系型数据库
学生免费领取阿里云服务器一年的方法,以及各种活动
学生可以免费领取阿里云服务器一年,新人可获2核4G,非新人2核2G。访问链接注册并完成学生认证,领取300元无门槛优惠券,购买轻量应用服务器。此外,还有多项活动可赢取实物奖品。
46 2
|
9天前
|
监控 Kubernetes 安全
如何设置一个有效的远程管理工具来简化服务器的维护工作?
如何设置一个有效的远程管理工具来简化服务器的维护工作?
|
21天前
|
监控 网络安全 调度
Quartz.Net整合NetCore3.1,部署到IIS服务器上后台定时Job不被调度的解决方案
解决Quartz.NET在.NET Core 3.1应用中部署到IIS服务器上不被调度的问题,通常需要综合考虑应用配置、IIS设置、日志分析等多个方面。采用上述策略,结合细致的测试和监控,可以有效地提高定时任务的稳定性和可靠性。在实施任何更改后,务必进行充分的测试,以验证问题是否得到解决,并监控生产环境的表现,确保长期稳定性。
34 1
|
25天前
|
网络协议 Unix Linux
一个.NET开源、快速、低延迟的异步套接字服务器和客户端库
一个.NET开源、快速、低延迟的异步套接字服务器和客户端库
|
16天前
|
Web App开发 安全 网络安全
tplink虚拟服务器设置方法
为了更全面地理解云服务及其在企业应用中的角色,推荐访问,他们提供了一系列高性能、安全稳定的云服务器解决方案,包括但不限于香港云服务器、高防服务器等,特别适合寻求全球化业务扩展的企业。蓝易云不仅拥有全球化的基础设施布局,还提供针对各种行业定制的全栈云解决方案,助力企业实现云端部署,跨越传统界限,即刻启航云端之旅。
22 0
|
20天前
|
前端开发 Docker 容器
主机host服务器和Docker容器之间的文件互传方法汇总
Docker 成为前端工具,可实现跨设备兼容。本文介绍主机与 Docker 容器/镜像间文件传输的三种方法:1. 构建镜像时使用 `COPY` 或 `ADD` 指令;2. 启动容器时使用 `-v` 挂载卷;3. 运行时使用 `docker cp` 命令。每种方法适用于不同场景,如静态文件打包、开发时文件同步及临时文件传输。注意权限问题、容器停止后的文件传输及性能影响。
|
21天前
|
Windows
.NET 隐藏/自定义windows系统光标
【10月更文挑战第20天】在.NET中,可以使用`Cursor`类来控制光标。要隐藏光标,可将光标设置为`Cursors.None`。此外,还可以通过从文件或资源加载自定义光标来更改光标的样式。例如,在表单加载时设置`this.Cursor = Cursors.None`隐藏光标,或使用`Cursor.FromFile`方法加载自定义光标文件,也可以将光标文件添加到项目资源中并通过资源管理器加载。这些方法适用于整个表单或特定控件。
|
23天前
|
弹性计算 数据安全/隐私保护 Windows
阿里云国际版无法远程连接Windows服务器的排查方法
阿里云国际版无法远程连接Windows服务器的排查方法