如何从MVC中的一个Controller加载两个视图

Ven*_*ddy 0 asp.net-mvc asp.net-mvc-3 asp.net-mvc-4

我有两个Html链接 <a href="@Html.ActionLink("advetisement","sample")"></a>, <a href="@Html.ActionLink("advetisement1","sample")"></a> 当我点击First Link时,它转到Sample控制器并转到advetisement Methode并返回View public ActionResult advetisement{ // here iam reciveing data to variable return view() } 现在它返回查看 并且数据绑定并显示Page.Now当我点击第二个链接时它应该转到相同的控制器( advetisement)并返回相同的数据,但视图应该是不同的,因为html样式已更改.

Mar*_*rko 5

您可以从同一个控制器操作加载两个不同的视图:

if (model.SomeCondition == true)
{
   return View("ViewName1", model);
}
return View("ViewName2", model);
Run Code Online (Sandbox Code Playgroud)

然后使用视图模型存储确定要显示的视图的条件:

public class MyViewModel
{
    public bool SomeCondition  { get; set;}
    public object Data { get; set; }
}
Run Code Online (Sandbox Code Playgroud)