这更像是对MVC 3如何工作的“建筑理解”。我真的想知道MVC如何知道调用给定控制器动作的视图。我猜想当我们使用Visual Studio为控制器动作创建视图时,它会将这些绑定存储在项目的某种文件中,是吗?
提前致谢。 Marcelo Myara 里约热内卢/巴西
答案 0 :(得分:2)
使用"Convention over Configuration"的想法完成了。
如果您使用没有视图的随机操作,您可以看到它实际上尝试了一堆不同的约定,寻找匹配:
public ActionResult SomeActionWithNoView()
{
return View();
}
它会查找与 Views / ControllerName 或 Views / Shared 文件夹。
未找到视图'SomeActionWithNoView'或其主视图或视图引擎不支持搜索的位置。搜索了以下位置:
〜/查看/主页/ SomeActionWithNoView.aspx
〜/查看/主页/ SomeActionWithNoView.ascx
〜/查看/共享/ SomeActionWithNoView.aspx
〜/查看/共享/ SomeActionWithNoView.ascx
〜/查看/主页/ SomeActionWithNoView.cshtml
〜/查看/主页/ SomeActionWithNoView.vbhtml
〜/查看/共享/ SomeActionWithNoView.cshtml
〜/查看/共享/ SomeActionWithNoView.vbhtml
可以使用 / Views 根目录中的 _ViewStart.cshtml 设置默认视图布局:
@{
Layout = "~/Views/Shared/MyDefaultLayout.cshtml";
}
可以在各个视图中根据需要删除或更改它。