繁体   English   中英

如何使MVC3调用具有不同名称的视图?

[英]How can I get MVC3 to call a view with a different name?

我的控制器中有以下内容:

    public ActionResult Tests()
    {
    }

    public ActionResult Test()
    { 
    }

返回时,我都想转到Test.cshtml视图。 有人可以告诉我这是否可行。 我知道测试默认情况下会转到Test.cshtml,但是测试呢? 如何将其定向到Test.cshtml?

另外,我应该将它们保留为两个视图并使用RenderPartial吗? 如果这样做了,那么如何将模型传递到RenderPartial视图中?

谢谢,

返回时提供视图名称

看来您还没有真正检查出方法重载。 从控制器动作返回时,有几种可能的重载会返回ViewResult结果。 其中之一允许您提供视图名称:

public ActionResult Tests()
{
    ...
    // provide the model too if you need to
    return View("Test", model);
}

public ActionResult Test()
{ 
    ...
    // provide the model too if you need to
    return View("Test", model);
}

HTML.RenderPartial也有重载

Html.RenderPartial也是如此,您还可以在调用时提供模型。 在此处检查其扩展方法。

我建议您检查文档,因为您会了解更多。

View的重载允许您显式命名要使用的视图。

public ActionResult Tests()
{
  return View("Test");
 }

 public ActionResult Test()
 { 
   return View("Test");
 }

使用过载

return View("Test");

尽管有调用操作,这将返回名为“ Test”的视图

是的,只需指定视图名称:

return View("Test");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM