ASP.NetMVC/EF:如何使用正确的模式更新一个包含嵌套项的复杂记录?
创始人
2024-09-19 02:30:43
0

在ASP.NET MVC中使用Entity Framework更新包含嵌套项的复杂记录的正确模式是使用视图模型和映射器。视图模型是一个简化的模型对象,它只包含视图所需的属性,并将所有嵌套属性转换为单个属性。映射器是将视图模型转换为此复杂记录对象的桥梁。

以下是一个示例解决方案,该示例使用名为Product的数据模型,并且每个Product具有1个或多个Option。这是一个Product数据模型的示例代码:

public class Product 
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string Description { get; set; }
    public virtual ICollection

为了更新Product对象,可以创建一个名为ProductViewModel的视图模型对象。ProductViewModel具有与Product相同的属性,但它还有一个名为OptionViewModels的ICollection,其中包含OptionViewModel的对象。以下是ProductViewModel的示例代码:

public class ProductViewModel 
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string Description { get; set; }
    public ICollection OptionViewModels { get; set; }
}

public class OptionViewModel 
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string Description { get; set; }
    public int Price { get; set; }
}

现在,需要创建两个映射器,一个将Product转换为Product

相关内容

热门资讯

第四分钟带你开挂!789大菠萝... 第四分钟带你开挂!789大菠萝脚本,赣牌圈破解器,线上教程(有挂透视)-哔哩哔哩【无需打开直接搜索加...
六分钟带你发现!约局吧透视辅助... 六分钟带你发现!约局吧透视辅助ios下载,欢聚水鱼神器,技巧教程(有挂神器)-哔哩哔哩 了解更多开挂...
2分钟带你辅助!会星盟辅助,创... 2分钟带你辅助!会星盟辅助,创思维激k看底牌辅助软件,AI教程(有挂详情)-哔哩哔哩创思维激k看底牌...
1分钟带你了解!游戏挂机辅助软... 1分钟带你了解!游戏挂机辅助软件,微乐家乡麻辣自建房辅助app,存在挂教程(的确有挂)-哔哩哔哩您好...
第五分钟带你讲解!新518互游... 第五分钟带你讲解!新518互游脚本,微信小程序微乐辅助器教程,新2026版(竟然有挂)-哔哩哔哩;无...
第1分钟带你科普!新九五辅助微... 第1分钟带你科普!新九五辅助微信脚本,wepkerplus辅助辅助,分享教程(有挂秘诀)-哔哩哔哩;...
3分钟带你了解!情怀莆仙到底是... 3分钟带你了解!情怀莆仙到底是不是有挂,玩吧辅助脚本,透明教程(的确有挂)-哔哩哔哩;亲,情怀莆仙到...
3分钟带你明白!边锋辅助工具,... 3分钟带你明白!边锋辅助工具,新九方科技,靠谱教程(有挂存在)-哔哩哔哩《详细加薇136704302...
第8分钟带你科普!福州十八扑插... 第8分钟带你科普!福州十八扑插件,爱来大菠萝挂,细节方法(的确有挂)-哔哩哔哩;无需打开直接搜索加薇...
第七分钟带你辅助!天天互娱网络... 您好:衢州都莱辅助软件这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌...