Я перешел, а затем вернулся к этому, но я все еще не могу заставить его работать.Почему не отображается многоселекторный список, показывающий выбранные элементы? MVC
var companiesList = subcontractRepository.SubcontractCompanies(Subcontract.subcontract_id);
IEnumerable<Guid> selectedList = companiesList.Select(a => a.Id);
Companies = new MultiSelectList(companiesList, "Id", "Name", selectedList);
В SubcontractRepository.cs
public class SelectCompanyItem
{
public string Name { get; set; }
public Guid Id { get; set; }
}
public IEnumerable<SelectCompanyItem> SubcontractCompanies(Guid id)
{
return
from c in db.companies
select new SelectCompanyItem
{
Name = c.company_name,
Id = c.company_id
};
}
Вид:
<p>
<label for="Companies">Company:</label>
<%= Html.ListBox("Companies", Model.Companies) %>
<%= Html.ValidationMessage("Companies", "*") %>
</p>
производства HTML:
<p>
<label for="Companies">Company:</label>
<select id="Companies" multiple="multiple" name="Companies"><option value="4cf411d0-e111-488b-822f-ea194951cfda">Second Company</option>
<option value="1c21e613-a668-4817-bf6d-73befb8c9dbd">Test Company</option>
</select>
</p>
Значит, вы пытаетесь выбрать все элементы в списке, верно? Вы посмотрели HTML-код, который был создан? –
Да. Я пытался упростить его, удалив мои критерии выбора и просто запустив его, сначала выбрав все. Добавлен html, созданный для оригинального сообщения. – RememberME
Из вашего html не отображается выбранный атрибут. Поэтому проверьте значения selectedList, которые они могут не заполнить или не совпадают. Попробуйте сделать список для selectedValued и посмотреть, работает ли он. –
sarvesh