2012-02-05 59 views
0

我目前正在寻找实现页面之间的导航(不使用任何类型的对话框)的好方法 - 特别是在一个页面是由多于一个的其它页面共享。页面导航与MVC3

有三个页面:

  • ProductEdit
  • OrderListItem
  • 产品列表

的ProductEdit页面可以同时从OrderItemList并导航到ProductList页面。

的ProductEdit页面有取消,并为它的更新动作。当用户点击这些动作之一时,我需要控制返回到它来自的页面。

多层次

的最佳途径的任何想法来实现这一点。我还需要在多个层面支持这项工作。

相关发布 这是所有MVC3有关,但非常相似,另一StackOverflow上发帖:Web page navigation

非常感谢!

+0

您与ASP.Net MVC的结构fimilar? **完全**的问题是什么? – gdoron 2012-02-05 12:00:13

+0

相当熟悉MVC。当我到达ProductEdit页面时,我该如何知道返回的位置?我熟悉的URL引用,但所以我认为这是UrlReferrer出于这样的做法不会在多层次senarios工作。 – dubs 2012-02-05 12:05:51

回答

0

您可以使用ProductEdit页的局部视图,然后检查ViewBag.Title知道在哪个页它是从哪里来的。例如:

在OrderListItem页:

@{ ViewBag.Title = "OrderListItem";} 
@Html.Partial("ProductEdit"); 

和在相同页产品列表。 在ProductEdit页检查:

If (ViewBag.Title = "OrderListItem") 

//值发送到与标题放慢参数的控制......

+0

感谢您的意见。我明白你在说什么,但这会将ProductEdit页面紧紧地连接到请求它的所有其他页面。我应该指出,我希望ProductEdit页面是一个单独的页面(即不是部分)。也许,之前装了ProductEdit页我可以存储(或者ViewBag或模型)的回归动作,控制器和路由数据)。这可以工作吗? – dubs 2012-02-05 13:30:12

+0

我不是很了解你。为什么不能在必需的页面中实现@ Html.Partial(“ProductEdit”)? – TwTw 2012-02-05 14:06:47

+0

因为我想在单独的页面中显示ProductEdit视图。我Html.Partial的理解是,它将使HTML中含有视图 - 这不是我想要做的事 - 我希望保持ProductEdit视图作为一个单独的页面,用户可以浏览到。我希望这说明了 - 对于任何混淆抱歉。 – dubs 2012-02-05 16:21:20