0

这个问题应该是相当基本的。我想控制 ASP.NET 页面的流程——如果满足某个条件,我想写出一条错误消息并停止绘制页面。但是,我也希望 ASP.NET 能够输出正确的 HTML(即中间不中断)。现在我正在这样做:

   if (condition != what-i-want) {
     Label_Error.Text = "Sorry, you messed up";
     return;
   }

该片段的问题在于 ASP.NET 绘制了定义页面的其余部分,而没有在错误发生后中断。我真的不想制作整个页面Visible = False,然后在某人通过身份验证时撤消它。

有什么好的方法可以做到这一点吗?我已经尝试过Response.End(),但这并没有输出干净的 HTML(或者实际上是任何东西,因为我正在签入Page_Load)。我有过类似的经历Response.Close(),等。

谢谢。

4

1 回答 1

2

最简洁的方法是创建另一个页面,向用户提供有关问题的消息,然后使用 server.transfer(或 response.redirect)将控制权转移到该页面。

另一种方法是将整个页面内容包含在面板(或面板)中,除了您希望用户看到的内容,然后关闭面板的可见性以不显示页面内容 - 但请注意,页面生命周期不会停止; 只是面板中的内容不可见。

于 2010-09-15T08:28:45.447 回答