ASP.NETMVCUpdatingMaster-DetailRecordsinSingleHTTPPostRequest”的英文原文较长,需要将其翻译成中文并给出包含代码示例的解决方法。
创始人
2024-09-19 07:00:49
0

在ASP.NET MVC应用中,当我们需要更新主从关系(Master-Detail)记录时,有时需要在单个HTTP POST请求中同时更新多个相关记录。以下是一种解决方法。

首先,我们需要在视图模型类中定义主从关系模型的实体类。假设我们有两个实体类:Order和OrderItem。OrderItem中包含对Order的外键引用。

public class EditOrderViewModel
{
    public Order Order { get; set; }
    public List OrderItems { get; set; }
}

在编辑订单的视图中,为每个订单条目添加输入框。使用命名约定和索引来确保每个条目正确地绑定到视图模型。

@model EditOrderViewModel
@using (Html.BeginForm())
{
    @Html.AntiForgeryToken()
    @Html.HiddenFor(m => m.Order.Id)
    
    
@Html.LabelFor(m => m.Order.CustomerName) @Html.TextBoxFor(m => m.Order.CustomerName, new { @class = "form-control" })
@for (var i = 0; i < Model.OrderItems.Count; i++) {
@Html.HiddenFor(m => m.OrderItems[i].Id) @Html.HiddenFor(m => m.OrderItems[i].OrderId)
@Html.LabelFor(m => m.OrderItems[i].Product) @Html.TextBoxFor(m => m.OrderItems[i].Product, new { @class = "form-control" })
@Html.LabelFor(m => m.OrderItems[i].Quantity) @Html.TextBoxFor(m => m.OrderItems[i].Quantity, new { @class = "form-control" })
} }

在处理POST请求的控制器动作中,我们需要加载现有的订单和订单条目,并根据请求中的数据更新它们。最后,我们保存更改并重定向到订单列表。

[HttpPost]
[ValidateAntiForgeryToken

相关内容

热门资讯

开挂辅助软件"wep... 开挂辅助软件"wepoker透视脚本免费下载pc"开挂(透视)辅助脚本(有挂分析)【无需打开直接搜索...
开挂辅助工具"wep... 开挂辅助工具"wepoker钻石怎么看底牌"开挂(透视)辅助安装(发现有挂)《详细加薇1367043...
辅助开挂!小程序边锋辅助,we... 辅助开挂!小程序边锋辅助,wejoker辅助器要钱玩吗(透视)开挂辅助工具(有挂方略);是一款可以让...
开挂辅助神器"aap... 较多好评“微乐万能挂官网”开挂(透视)辅助教程 了解更多开挂安装加(136704302)微信号是一款...
开挂辅助!天天炫斗辅助工具,h... 开挂辅助!天天炫斗辅助工具,hhpoker到底可以辅助吗(透视)开挂辅助脚本(有挂方法);AI辅助机...
开挂辅助安装"wep... 开挂辅助安装"wepoker到底有没有透视"开挂(透视)辅助平台(有挂攻略);打开点击测试直接进入微...
开挂辅助!顺兴茶楼开挂,wep... 开挂辅助!顺兴茶楼开挂,wepokerplus万能挂(透视)开挂辅助下载(有挂辅助);1、超多福利:...
开挂辅助神器"hhp... 开挂辅助神器"hhpoker真的假的"开挂(透视)辅助下载(有挂技巧) 了解更多开挂安装加(1367...
开挂辅助!微信小程序游戏辅助,... 开挂辅助!微信小程序游戏辅助,wepoker辅助器安装包(透视)开挂辅助下载(有挂规律);1.微信小...
开挂辅助下载"pok... 您好:这款pokemmo脚本辅助游戏是可以开挂的,确实是有挂的,很多玩家在这款pokemmo脚本辅助...