两个重载之间的基本区别是什么View(model)
,View("viewName", model)
如果我的操作名称与视图名称相同。
其中哪一个更适合用于使代码更清晰?有性能差异吗?
两个重载之间的基本区别是什么View(model)
,View("viewName", model)
如果我的操作名称与视图名称相同。
其中哪一个更适合用于使代码更清晰?有性能差异吗?
我知道应该没有任何区别,这两种方法只是重载。
这是来自 MVC3 代码库的源代码 -
protected internal ViewResult View() {
return View(null /* viewName */, null /* masterName */, null /* model */);
}
protected internal ViewResult View(object model) {
return View(null /* viewName */, null /* masterName */, model);
}
protected internal ViewResult View(string viewName) {
return View(viewName, null /* masterName */, null /* model */);
}
protected internal ViewResult View(string viewName, string masterName) {
return View(viewName, masterName, null /* model */);
}
protected internal ViewResult View(string viewName, object model) {
return View(viewName, null /* masterName */, model);
}
protected internal virtual ViewResult View(string viewName, string masterName, object model) {
if (model != null) {
ViewData.Model = model;
}
return new ViewResult {
ViewName = viewName,
MasterName = masterName,
ViewData = ViewData,
TempData = TempData
};
}
在内部,如果viewName
没有通过,MVC 会使用ControllerContext
.