gpt4 book ai didi

c# - 查看 ASP.NET MVC3 中的模型模式和用法(同时使用 EF 4.1)

转载 作者:太空狗 更新时间:2023-10-29 23:18:03 25 4
gpt4 key购买 nike

几天来我一直在寻找这个问题的答案,这让我发疯。目前,我正在使用 ASP.NET MVC 3 开发一个项目,并尝试使用每个 Controller 的 ViewModel 方法,正如我已查看的许多文章和教程所建议的那样。为了更好地说明我要问的内容,我将在下面概述:

假设我有一个非常简单直接的模型。用户、客户、地址、电话号码、订单、产品、类别等...当用户在我的网站上注册新帐户时,我想:1)为他们创建一个帐户(这只是一个帐户ID,客户类型)2) 将他们的客户人口统计数据添加到 Customers3)添加N地址和地址类型4)同时添加N个电话号码和类型。

据我所知,我决定需要一个 RegisterCustomerForRegistrationControllerViewModel。我的困境是这个模型是什么样的?我试图尽可能地干,但在实现这种模式时,我似乎每次都在重复自己。我在什么级别放置 DataAnnotations 进行验证?那么即使我只想使用给定 ViewModel 中的类中的一个属性,我是否只是简单地新建一个新的 Customer()?

在这一点上,我什至不确定这是一个正确的假设。关于这个话题似乎有很多意见,但实现的具体例子却很少。我希望有人能为我指明正确的方向,并可能在此过程中提供一些代码片段……我希望这一切都足够清楚,如果没有,请随时提出后续问题。

再次,提前致谢!

最佳答案

在应用程序的两个不同层重复简单属性并不违反 DRY。它只是很好的设计。

DataAnnotations 在 ViewModels 上运行。

ViewModel 看起来像

public class RegisterCustomerViewModel
{
[Required]
public string Name { get; set; }
public List<AddressViewModels> Addresses { get; set; }
public List<PhoneNumberViewModel> PhoneNumbers { get; set; |

}

关于c# - 查看 ASP.NET MVC3 中的模型模式和用法(同时使用 EF 4.1),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6667489/

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