Tôi đang xây dựng một trang web trong MVC và Mô hình Xem mà tôi đang chuyển đến Chế độ xem của tôi chứa một đối tượng tùy chỉnh có chứa danh sách các đối tượng tùy chỉnh của IEnumarable..NET MVC Razor Dynamic Form Generation
Ý tưởng là dao cạo sẽ tự động tạo biểu mẫu cho IEnumerable có thể là bất kỳ số lượng đối tượng nào.
@foreach (var data in Model.Kpi.Values)
{
<div class="editor-label">
@Html.Label(data.Field.Name);
</div>
<div class="editor-field">
@Html.EditorFor(model => data.Value)
@Html.ValidationMessageFor(model => data.Value)
</div>
}
Biểu mẫu hiển thị hoàn hảo bao gồm chú thích dữ liệu tuy nhiên IEnumerable rỗng trong chức năng điều khiển bài đăng.
[HttpPost]
public virtual ActionResult Create(KpiCreateViewModel vm)
{
return this.RedirectToAction(MVC.Kpi.Index());
}
Tôi đã đặt điểm ngắt trên báo cáo trả về và kiểm tra nội dung của biến vm.
Có ai đề xuất phương pháp truy xuất dữ liệu biểu mẫu không?
Cảm ơn trước
Có nói rằng, [this post] (http://stackoverflow.com/questions/1983999/how-to-use-editorfor-inside-a-foreach) gợi ý rằng bạn có thể sử dụng 'foreach'. Nhưng hãy nhìn vào tên được tạo ra và điều đó sẽ cho bạn manh mối. –
Điều đó dường như đã làm một nửa trận chiến. Đối tượng bây giờ có một giá trị, nhưng nó không có một Field.name. Để làm rõ lớp KpiValue có các thuộc tính, đối tượng trường, đối tượng Kpi và chuỗi giá trị. Cần một số cách để xác định "Trường". – JConstantine