Asp.net mvc 在MVC中,部分视图和强类型视图有什么区别?

Asp.net mvc 在MVC中,部分视图和强类型视图有什么区别?,asp.net-mvc,Asp.net Mvc,问题是标题本身。我是MVC的新手,现在正在进行自学。请给我一个答案,这是一个新的MVC清楚。谢谢。局部视图只不过是Html的一部分,您可以将其保存在单独的文件中,以便在其他视图中重复使用。有点像ASP.NET WebForms中的用户控件 强类型视图意味着它有一个控制器传递给它的关联ViewModel,并且该视图中的所有元素都可以使用这些ViewModel属性 您也可以使用强类型的partials。这意味着Html需要特定的数据,所以您可以将其键入特定的ViewModel public Acti

问题是标题本身。我是MVC的新手,现在正在进行自学。请给我一个答案,这是一个新的MVC清楚。谢谢。

局部视图只不过是Html的一部分,您可以将其保存在单独的文件中,以便在其他视图中重复使用。有点像ASP.NET WebForms中的用户控件

强类型视图意味着它有一个控制器传递给它的关联ViewModel,并且该视图中的所有元素都可以使用这些ViewModel属性

您也可以使用强类型的partials。这意味着Html需要特定的数据,所以您可以将其键入特定的ViewModel

public ActionResult Index() {
    return View();
}
下面是一个强类型视图的示例

@model SomeViewModel

...// all the html comes after
非强类型视图没有
@model SomeViewModel

下面是一个控制器操作的示例,该操作在不使用ViewModel的情况下渲染普通视图

public ActionResult Index() {
    return View();
}
下面是一个呈现强类型视图的

public ActionResult Index() {
    var model = new SomeViewModel();
    return View(model);
}
视图通过在文件顶部放置
@model SomeViewModel
来使用该视图模型

现在视图有了ViewModel,我可以显示绑定到ViewModel的元素,如

@Html.TextBoxFor(m => m.FirstName)
@Html.CheckBoxFor(m => m.IsAwesome)
因此,输入这些字段的任何数据都将绑定到ViewModel。当用户单击submit按钮时,输入的值将被发送回服务器

正如我之前所说,部分视图是一个可重用的Html片段。因此,在同样的观点中,我可以添加我的部分。假设我有一个局部视图,其中包含一个标准的Html,我想在我的整个站点上重用它,比如页脚

我可以创建一个.cshtml文件并将其放入其中

<div> footer text here</div>

谢谢你的回答。那么优势是什么呢?你能再解释一下吗?@VeeKeyBee这真是一个“教程”式的问题。你试过在谷歌上搜索你的问题吗?@VeeKeyBee我刚试过在谷歌上搜索,第一个结果是:@GeorgeStocker再次感谢你的解释,让我在谷歌上搜索。而且肯定会卷土重来。希望你能再次帮助我。我看到了,但我很难消化代码。让我再看一遍。为什么我在谷歌搜索过。但我想不清楚(