asp.net – 在Web.config中是否可以在指定目录中注册所有用户控件

前端之家收集整理的这篇文章主要介绍了asp.net – 在Web.config中是否可以在指定目录中注册所有用户控件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
目前我正在Web.config中单独注册每个用户控件
<pages validateRequest="false">
  <controls>
    <add tagPrefix="cc1" src="~/Controls/MyUserControl1.ascx" tagName="MyUserControl1"/>
    ...    
    <add tagPrefix="cc1" src="~/Controls/MyUserControlN.ascx" tagName="MyUserControlN"/>
  </controls>
</pages>

但有时我忘了检查web.config.实际上,我经常忘记它已更改跳过它,因为它经常会破坏其他设置为连接到本地db DB副本的设置.

我想知道是否可以只指定整个Controls目录并自动注册所有控件

@H_403_8@

解决方法

是的,不是.

基本上,您可以在web.config中注册所有用户控件.但是,如果要在其他用户控件中使用任何用户控件,则会遇到问题.

所以,如果你永远不会嵌套用户控件,那么你很高兴.但是如果你想要灵活地嵌套用户控件,你有几个选择:

>在web.config中注册它们,然后,在嵌套的情况下,将您直接嵌套的控件注册到父usercontrol中.
>正如上面提到的Bryan,将您的usercontrol编译成一个程序集,并在web.config中引用它们.
>这是最糟糕的选择,但基本上你可以通过将控件放在子文件夹中来注册web.config中的所有用户控件来解决嵌套问题…这不是一个很好的选择.
>另一个选择是强烈键入您的用户控件,可能是通过为您的用户控件创建基类.

基本上它不是框架中的错误,而是将所有内容编译到单个程序集中的结果.该应用程序基本上无法区分用户控件.

还有一些信息herehere. check out the comments on this one

@H_403_8@ @H_403_8@

猜你在找的asp.Net相关文章