在ASP.NET中编写导航逻辑的最佳方法是什么?

时间:2008-11-14 13:20:55

标签: asp.net architecture design-patterns

这可以在没有MVC的情况下完成吗? 是否有一种简单的方法来抽象或封装导航逻辑?

我目前在我的代码背后有很多以下内容(我知道这可能不是最好的事情):

protected void btnNext_Click(object sender, EventArgs e)
{
   ...

   if (condition1)
   {  Response.Redirect("~/NextPage.aspx");  }
   else if (condition2)
   {  Response.Redirect("~/AnotherPage.aspx");  }
   else
   {  Response.Redirect("~/GoBackToOldKentRoad.aspx");  } 
}

2 个答案:

答案 0 :(得分:2)

您可能需要考虑使用Web.sitemap文件来保存导航信息。

您还可以查看在其中一个预览中为MVC构建的路由库,它们将这些类拆分为System.Web.Routing命名空间,从我所听到的,它现在可以与WebForms一起使用。我不确定在WebForms中使用它有多容易,但它可能值得研究。

答案 1 :(得分:1)

根据你的例子,我不认为MVC有很大的不同。这几乎是执行多页工作流程的标准方法。据推测,MVC会将其发送到不同的视图,但基本概念是相同的。除非你有一个非常大而复杂的工作流程,否则这是处理它的最简单方法。