Hãy tin tôi tôi đã cố gắng rất nhiều tùy chọn để làm điều đó and I have answer here
nhưng tôi luôn tìm kiếm những thực hành tốt nhất
và cách tốt nhất tôi biết cho đến nay cho cả nhà phát triển giao diện người dùng và chương trình phụ trợ là for loop
(vâng tôi không đùa)
vì khi front-end cung cấp cho bạn các trang với dữ liệu giả UI ông cũng nói thêm lớp học và một số phong cách nội tuyến trên sự lựa chọn, cụ thể để hard to deal
với rằng việc sử dụng HtmlHelper
mất cái nhìn lúc này
<select class="input-lg" style="">
<option value="0" style="color:#ccc !important;"> Please select the membership name to be searched for </option>
<option value="1">11</option>
<option value="2">22</option>
<option value="3">33</option>
<option value="4">44</option>
</select>
này từ nhà phát triển front-end giải pháp vì vậy tốt nhất là sử dụng vòng lặp for
fristly create
hoặc get your list
dữ liệu fr om (...) trong điều khiển hành động và đặt nó trong ViewModel, ViewBag hoặc bất cứ điều gì
ViewBag.MembershipList = await _membershipAppService.GetAllMemberships();// this returns object that contain Items and TotolCount
Thứ hai trong giao diện làm điều này đơn giản cho vòng lặp để cư trú trong DropDownList
<select class="input-lg" name="PrerequisiteMembershipId" id="PrerequisiteMembershipId">
<option value="" style="color:#ccc !important;"> Please select the membership name to be searched for </option>
@foreach (var item in ViewBag.MembershipList.Items)
{
<option value="@item.Id" @(Model.PrerequisiteMembershipId == item.Id ? "selected" : "")>@item.Name</option>
}
</select>
theo cách này bạn sẽ không phá vỡ thiết kế giao diện người dùng, và đơn giản, dễ dàng và dễ đọc hơn
hy vọng nó này giúp bạn ngay cả khi bạn không sử dụng dao cạo
Nguồn
2016-11-06 09:50:58
'của bạn var listitems = ... 'phải ở trong điều khiển của bạn không Xem của bạn . – Liam
đây là MVC3 nhưng nó giống cú pháp như MVC4: http://stackoverflow.com/questions/5070762/mvc3-razor-html-dropdownlistfor – Liam
@Liam: Nó có thể thuộc về kiểu xem, không nằm trong bộ điều khiển. Bộ điều khiển không nên có sự phụ thuộc vào 'ListItem' vì nó là một khái niệm ràng buộc UI. Nó thậm chí không nên _really_ được trong mô hình xem, chỉ trong xem. Bộ điều khiển nên xây dựng mô hình khung nhìn, mô hình khung nhìn sẽ chứa dữ liệu, khung nhìn nên xây dựng các phần tử giao diện người dùng (như 'ListItem') cho dữ liệu đó. – David