2012-04-03 26 views
0

我有一个页面(a.aspx)到我可是从两个不同的页面导航(即有在其导航到a.aspx这两个页面的链接)替代计划的ViewData和查询字符串

从分化哪个页面导航到a.aspx我使用下面的代码。

传递查询字符串(B1,B2)到目标页面如下

Html.ActionLink("test" "Testing", new { Controller = "Stats",prev="B1"},new { @class = "link",target="_self" }) 
Html.ActionLink("test" "Testing", new { Controller = "Stats",prev="B2"},new { @class = "link",target="_self" }) 

并在目标页面控制器的动作我用下面的代码

ViewData["prev"] = Request.QueryString["prev"].ToString(); 

和IM使用此的ViewData在目标页面即a.aspx.This工作正常.. 即时通讯不愿意使用Query.string和ViewData上述requirements.Please建议任何其他替代方法相同。

回答

0

您可以使用此,

获取控制器

@ViewContext.Controller.ValueProvider.GetValue("controller").RawValue 

的名义获取的动作

@ViewContext.Controller.ValueProvider.GetValue("action").RawValue 

的名字,我发现here

0

为什么不导航到返回相同视图的两个单独的操作?然后,将模型返回到将显示“from”页面的视图。你会知道哪个页面来自哪个行动受到打击。它比清单,查询数据,视图包等都更清晰,更简单,更容易维护。这就是说,如果你需要做很多这样的事情,那么创建单独的每次行动都不是reali