sac*_*sac 4 .net vb.net asp.net user-controls request.querystring
是否可以从aspx文件中的Request.QueryString中检索ID值并将其传递到ascx文件,以便使用检索到的ID成功更新配置文件?
通常,如果UserControl中存在某些内容,则可能是因为控件中的功能非常重要,可以分解为可以在其他页面上重用的自己的可重用容器.如果该控件实际上将在另一个页面上重用,它实际上不应该引用查询字符串参数,因为控件不应该假设它在哪个页面上.如果该控件包含在查询字符串参数名称不同的另一个页面上,该怎么办?或者可能在另一个页面上,该值将来自数据库或ViewState,或者将以某种方式自动确定?所以我的一般规则是,如果你要创建一个UserControl,永远不要,永远不要对它所托管的页面做出任何假设.
就像大多数人说的那样,你仍然可以从UserControl中访问Request.QueryString属性,但这可能不是最好的主意.在容器页面设置的控件上创建属性是一个好主意.
在我看来,最好的想法,以及我几乎总是这样做,是在控件上创建名为LoadData(或类似的东西)的方法,其中包含您需要的所有查询字符串值的参数.这样,您就可以获得该数据的单个入口点,因此很清楚这些值的设置点和设置值.如果你去了属性路线,总是会担心是否所有属性都已设置,以及它们是否在页面生命周期中设置在正确的位置(在回发期间它会变得棘手)
| 归档时间: |
|
| 查看次数: |
17825 次 |
| 最近记录: |