tôi đang cố gắng để ràng buộc một mảng động của các yếu tố để một mô hình điểm nơi có thể có thiếu chỉ số trong htmlmảng Binding với các yếu tố còn thiếu trong asp.net MVC
ví dụ với mô hình xem
class FooViewModel
{
public List<BarViewModel> Bars { get; set; }
}
class BarViewModel
{
public string Something { get; set; }
}
và html
<input type="text" name="Bars[1].Something" value="a" />
<input type="text" name="Bars[3].Something" value="b" />
<input type="text" name="Bars[6].Something" value="c" />
vào lúc này, thanh sẽ chỉ được null. làm thế nào tôi có thể nhận được các mô hình chất kết dính để bỏ qua bất kỳ yếu tố mất tích? tức là ở trên sẽ liên kết với:
FooViewModel
{
Bars
{
BarViewModel { Something = "a" },
BarViewModel { Something = "b" },
BarViewModel { Something = "c" }
}
}
Rất gần, nhưng câu trả lời được chấp nhận trong url này có giải pháp hoàn chỉnh hơn: http://stackoverflow.com/questions/8598214/mvc3-non-sequential-indices-and-defaultmodelbinder – Levitikon
@Levitikon - Giải pháp được chấp nhận trong liên kết của bạn là quá mức cần thiết. Bạn không cần phải chỉ định '.Index' cho mỗi mục. Tôi đã sử dụng cách tiếp cận trên nhiều lần mà không cần thêm các đầu vào ẩn được mô tả trong liên kết của bạn. Thêm vào đó, Phil Haack đã tham gia vào đội ngũ phát triển ASP.NET MVC, vì vậy tôi khá chắc chắn những gì anh ấy viết trong blog của anh ấy là con đường để đi. – amurra
@amurra trong bài viết của Haack ông nói để sử dụng một đầu vào riêng biệt ẩn cho mỗi trường để có vẻ như nó là cần thiết. – Mykroft