gpt4 book ai didi

asp.net-mvc - ASP.NET MVC View 模型模式 - 验证和数据库操作

转载 作者:行者123 更新时间:2023-12-04 06:40:43 25 4
gpt4 key购买 nike

在开发之初,我遇到了称为“域模型和 View 之间的阻抗不匹配”的问题。为了解决这个问题,我决定使用 ViewModel 模式——我们为每个 View (即强类型)创建 viewmodel 类。但是验证逻辑在哪里——在 View 模型类中还是在我们的域模型对象中?我们需要在哪里执行查询数据库的操作 - 在 Controller 操作中,然后填充 View 模型或直接在 View 模型中?

谢谢你。

最佳答案

您应该具有 View 模型的验证逻辑。这是 View 发送的内容以及应该验证的内容。就填充 View 模型而言,这里是如何进行的:编写一个查询数据库并返回模型的存储库。然后将这些模型映射到 View 模型(AutoMapper 可以在这里帮助您)。最后将 View 模型返回到 View 。这也适用于其他方式:用户将一些数据以 View 模型的形式发布到 Controller 操作,一旦验证将映射回模型并传递到存储库进行更新。

作为数据注释的替代方案,您可以查看 FluentValidation用于验证您的 View 模型。它integrates nicely使用 ASP.NET MVC。

关于asp.net-mvc - ASP.NET MVC View 模型模式 - 验证和数据库操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4283999/

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