C# Asp.NETMVC:使用值列表插入表单集合中的数据
正如您在图中所看到的,我有一个表单,在其中我不断地向下表添加项目 当我单击“全部保存”按钮时,它将所有表值发布到“InsertBulk”方法。 在我看来,这就是我所做的。我在表中创建了一个表单。为每个输入字段设置名称和值。使输入字段隐藏,仅显示文本,然后单击“全部保存”按钮,将所有这些值发布到“插入批量”方法。C# Asp.NETMVC:使用值列表插入表单集合中的数据,c#,asp.net-mvc,formcollection,C#,Asp.net Mvc,Formcollection,正如您在图中所看到的,我有一个表单,在其中我不断地向下表添加项目 当我单击“全部保存”按钮时,它将所有表值发布到“InsertBulk”方法。 在我看来,这就是我所做的。我在表中创建了一个表单。为每个输入字段设置名称和值。使输入字段隐藏,仅显示文本,然后单击“全部保存”按钮,将所有这些值发布到“插入批量”方法。 @model fyppharmandistant.Models.InventoryModel.Manufacturer @{ ViewBag.Title=“表单”; Layout=“~
@model fyppharmandistant.Models.InventoryModel.Manufacturer
@{
ViewBag.Title=“表单”;
Layout=“~/Views/Shared/_Layout.cshtml”;
}
@使用(Html.BeginForm())
{
名称
@EditorFor(m=>m.ManufacturerName,new{htmlAttributes=new{@class=“form control”}})
说明
@EditorFor(m=>m.Description,new{htmlAttributes=new{@class=“form control”})
}
@使用(Html.BeginForm(“InsertBulk”、“Manufacturer”))
{
名称
描述
}
$(文档).on('ready',函数(){
$('#addmore')。在('click',函数(){
var$table=$(“#table”);
$table.append(“+$('#ManufacturerName').val()+”+$('#Description').val()+);
返回false;
});
});
如果是这样,为什么不基于逗号分割内容,将每个内容保存在两个不同的字符串数组中。然后遍历每个数组的项,并在每个循环中保存名称和描述 PublicActionResult学生(StudentModel模型,FormCollection frm)
public ActionResult Student(StudentModel model, FormCollection frm)
{
string XmlData = "<Parent>";
var stuclass = frm.GetValues("stuclass");
var InstituteId = frm.GetValues("Institute");
var obtmark = frm.GetValues("obtmark");
var totalmark = frm.GetValues("totalmark");
var per = frm.GetValues("per");
int count = stuclass.Count();
for (int i = 0; i < count; i++)
{
XmlData += "<child><stuclass>" + stuclass[i] + "</stuclass>"
+ "<InstituteId>" + InstituteId[i] + "</InstituteId>"
+ "<obtmark>" + obtmark[i] + "</obtmark>"
+ "<totalmark>" + totalmark[i] + "</totalmark>"
+ "<per>" + per[i] + "</per>"
+ "</child>";
}
XmlData += "</Parent>";
model.XmlData = XmlData;
var res = studal.Insertdtl(model);
return View();
}
{
字符串XmlData=“”;
var stuclass=frm.GetValues(“stuclass”);
var InstituteId=frm.GetValues(“机构”);
var obtmark=frm.GetValues(“obtmark”);
var totalmark=frm.GetValues(“totalmark”);
var per=frm.GetValues(“per”);
int count=stuclass.count();
for(int i=0;i
code-only答案不鼓励使用。请点击并添加一些文字,总结您的代码如何解决问题,或者解释您的答案与之前的答案有何不同。谢谢