gpt4 book ai didi

asp.net-mvc - 我们应该如何将数据传递给大型 ASP.NET MVC 网站中的 View

转载 作者:行者123 更新时间:2023-12-04 06:13:16 26 4
gpt4 key购买 nike

首先,我是php程序员很久了,我是mvc程序员。我做了几个小网站,每个网站最多有一个或两个 Controller 。但是我已经创建了一个网站,它将成为非常重要的网站。将有大量数据传递给 View 。

现在,通常我每次都尝试使用模型方法而不是 ViewBag 或 ViewData 方法。如果 View 需要更多数据,那么我更改模型类,然后重新编译项目。特别是,如果主题是索引页面,则传递给索引 View 的数据每次都会发生变化。在大型网站中,我将使用大量使用不同模型的局部 View 。所以每次,我都必须更改索引的模型以支持索引 View 中的那些部分 View 。如果我在索引 View 中添加一个新的局部 View ,我必须将局部的模型添加到索引的模型中。

每次启动网站时,我都会为索引 View 实现一个 IndexModel 类。然后,每次向索引添加新的局部 View 时,我都会向该模型添加属性。

现在这是一种正确的方法还是我应该将 ViewBag 或 ViewData 用于局部模型。我认为真正的问题是我们什么时候应该使用模型方法,什么时候不应该......

如果您分享您的经验,我将不胜感激。

最佳答案

您应该始终使用 MVC 方法,尤其是对于简单站点,它可以节省您的时间并使应用程序更易于理解。

如果你写的东西大于两页,你需要使用 MVVM 模式(MVC 的增长),在这种情况下,你将避免使用 ViewModels 的“部分模型”。

模型必须只包含业务逻辑。

如果您始终使用 ViewModel(而不是模型)从 View 返回数据并将其传递给 View ,那就更好了,因为它提供了一些安全性。

为了方便将数据从模型复制到 View 模型的过程,请使用 AutoMaper 和 EmitMapper 之类的东西。

ViewBag 和 ViewData 应该仅用于附加数据,例如 DropDown 的项目集合,或某些 View 文本(如页面标题)。

MVVM 模式的另一个优点是更好的可测试性。如果您编写并支持真正的 Hugh 站点,您可以为代码的某些负责部分编写测试。

有关更多详细信息,您可以查看 google - MVVM、ASP-MVC。

如果我在您的问题中没有理解或错过的内容,请将其写在评论中(“添加评论”引用)。

关于asp.net-mvc - 我们应该如何将数据传递给大型 ASP.NET MVC 网站中的 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7539069/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com