从路径获取属性或ascx文件的类型

时间:2011-11-01 21:34:04

标签: c# asp.net dynamic

基本上我想要一个ascx控件中的布尔属性,可以在不加载完整控件的情况下读取(我想避免LoadControl触发事件)。

我有数据库行,用于存储不同用户应该通过控件的虚拟路径看到的不同控件集。我需要添加打印这些控件的功能,但只有某些控件才能打印。

我正在考虑为那些支持它的控件创建一个接口,然后在构建打印页面时,我会检查每个控件的类型,看它是否有该接口。
沿着这些方向,我想知道是否有任何方法可以从文件的URL获取控件类型。我知道Page.LoadControl(url).GetType()会起作用,但我希望尽可能避免构建控件的开销。

原因: 由于打印能力可能会在开发过程中添加到其他控件中,并且具有ascx文件存储的代码,因此该属性在某种程度上是理想的。而不是需要更新每个数据库列表中的属性。

1 个答案:

答案 0 :(得分:2)

您可以使用Type命名空间中的UserControl类来获取BuildManager的{​​{1}}。

System.Web.Compilation