ฉันมีมุมมองหลักที่มี 2 มุมมองบางส่วน (gridview และแผงโทรกลับ)
มุมมองหลักนี้ได้รับ IEnumerable<Model>
และแผงควบคุมเพิ่งได้รับ Model
เมื่อเรียกมุมมองในตอนแรก มุมมองบางส่วนของแผงจะเต็มไปด้วยโมเดลว่างดังนั้นจึงว่างเปล่า
แต่ฉันต้องการเรนเดอร์พาเนลอีกครั้งเมื่อฉันคลิก Edit
ใน GridView
ฉันจะบรรลุเป้าหมายนี้ได้อย่างไร?
ขณะนี้ฉันมี @Html.ActionLink
ในปุ่มแก้ไข แต่มันใช้งานไม่ได้เนื่องจากจะสร้างมุมมองใหม่แทนที่จะแสดงมุมมองบางส่วนของแผงอีกครั้ง
มีเบาะแสอะไรบ้าง?
แก้ไข:
นี่คือการแก้ไขของฉัน:
Html.ActionLink("Edit", "EditConfig", new { id = DataBinder.Eval(c.DataItem, "QueueMonitorConfigurationsID") })
ฟังก์ชันที่เรียกลิงก์แก้ไข:
[HttpGet]
public ActionResult EditConfig(int id)
{
StorageConfigurationModel resultForPanel = new StorageConfigurationModel { };
IEnumerable<StorageConfigurationModel> configList = (IEnumerable<StorageConfigurationModel>)Session["ConfigurationList"];
foreach (StorageConfigurationModel configModel in configList)
{
if (configModel.QueueMonitorConfigurationsID == id)
{
resultForPanel = configModel;
break;
}
}
return PartialView("cbpnlNewUpdateConfigs", resultForPanel);
}
มุมมองหลักที่มีมุมมองบางส่วน:
@model IEnumerable<BPM.Website.Models.StorageConfigurationModel>
@Html.Partial("gvConfigurations", Model)
@Html.Partial("cbpnlNewUpdateConfigs", new BPM.Website.Models.StorageConfigurationModel { QueueMonitorConfigurationsID = -1 })