【问题标题】:Specify views location just for controller?仅为控制器指定视图位置?
【发布时间】:2012-07-15 16:44:44
【问题描述】:

我不想将视图位置添加到全局,但只需要一个控制器。如何从控制器内指定不同的视图位置?控制器构造函数中的配置会很好,但即使在操作中有办法做到这一点:return View(??)

【问题讨论】:

    标签: c# asp.net .net asp.net-mvc asp.net-mvc-4


    【解决方案1】:

    控制器构造函数中的配置会很好,

    是的,您可以在控制器的构造函数中注入配置项,是的,作为视图的字符串路径

    public class ExampleController : Controller
    {
      private string ViewPath;
      public ExampleController(string viewPath)
      {
         ViewPath = viewPath;
      }
    
      public ActionResult Index(ExampleModel exampleModel)
      {
         return View(ViewPath);
      }
    }
    

    【讨论】:

      【解决方案2】:

      您始终可以明确指定视图的位置:

      return View("~/Views/SomeSpecialLocation/Foo.cshtml", someModel);
      

      【讨论】:

      • 是否需要提及cshtml 扩展名?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-01-29
      • 1970-01-01
      • 2013-11-04
      • 1970-01-01
      • 2015-02-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多