asp.net-mvc – ASP.NET MVC中的Flat和Nested ViewModel类
发布时间:2020-05-23 07:31:50 所属栏目:asp.Net 来源:互联网
导读:我正在寻找关于ViewModel定义的两种不同方法的一些意见 我有一个公司类 public class Company{ public string Name { get; set; } public int CountryID { get; set; }} 对于创建和编辑视图,我需要一个国家列表来填充一个DropDownList为CountryID选择。我可
|
我正在寻找关于ViewModel定义的两种不同方法的一些意见 我有一个公司类 public class Company
{
public string Name { get; set; }
public int CountryID { get; set; }
}
对于创建和编辑视图,我需要一个国家列表来填充一个DropDownList为CountryID选择。我可以看到两个广泛的选择,如何构造ViewModel,下面将详细介绍。 嵌套ViewModel public class CompanyCreateEditViewModel
{
public Company Company { get; set; }
public IEnumerable<Country> Countries{ get; set; }
....
}
平面视图模型 public class CompanyCreateEditViewModel
{
public string Name { get; set; }
public int CountryID { get; set; }
public IEnumerable<Country> Countries{ get; set; }
....
}
目前,我赞成嵌套的方法,因为它使我从定义字段第二次,但我想把它打开更好的方法和评论。 谢谢 解决方法我个人更喜欢嵌套方法来表示,因为当使用部分视图时,它会导致更逻辑的设计。您可能有一个CompanyPartialView用于所有知道如何呈现公司的应用程序,因此将公司公开为嵌套结构是非常有意义的。另一方面,平面的ViewModel类是最容易处理数据输入的类。你只有一堆表单字段,所有的映射到单独的属性。所以我的策略通常是将它们压平为数据输入页面并嵌套它们用于演示文稿/报告页面。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 缺少ASP.NET_SessionId
- asp.net-mvc – 将参数传递给Azure Active Directory身份验
- asp.net – VirtualPathUtility.ToAbsolute()VS. Url.Conte
- 在Asp.net mvc5中使用用户名而不是电子邮件身份
- 与asp.net mvc的dotnetopenauth证明太沮丧使用
- asp.net-mvc-4 – 提交相同的部分视图多次调用数据到控制器
- asp经典 – 如何获得经典ASP中的当前域?
- asp.net-mvc-3 – 如何在MVC路由中组合CatchAll和EndsWith?
- asp-classic – 检查VBScript中是否存在Object
- asp.net-mvc – 如何在MVC中显示图像
推荐文章
站长推荐
热点阅读
