Как я могу заполнить SelectList из этого запроса Linq? - PullRequest
0 голосов
/ 01 ноября 2010

Я хочу вернуть результаты этого запроса во что-то, что я могу использовать для заполнения списка SelectList. Я попробовал NameValueCollection и IEnumerable, но оба не удалось.

Какие у меня есть варианты с этим кодом? Этот код не работает, но запрос именно то, что я хочу.


        public IEnumerable GetValidAssociationsForSelectList()
        {
            var associations = (from a in context.Associations
                               join u in context.Units on a.AssociationKey equals u.AssociationKey
                               where a.CCRRecording != null && a.CCRRecording.ToString() != ""
                               orderby a.LegalName
                                select new { a.AssociationKey, LegalName = a.LegalName.Replace("'", "") }).Distinct();
        }

Ответы [ 2 ]

0 голосов
/ 02 ноября 2010

Вам необходимо сделать так, чтобы тип возврата вашего оператора select соответствовал вашему IEnumerable.

Вот один из способов:

public IEnumerable<ListItem> GetValidAssociationsForSelectList() {
    var associations = ...;
    return associations.Select(a => new ListItem(item.AssociationKey, item.LegalName));
}
0 голосов
/ 02 ноября 2010

Вы должны вернуть ассоциации в вашем запросе:

public IEnumerable GetValidAssociationsForSelectList() {

    var associations = ( .... )

    return associations;

}

А затем выполните итерацию по IENumerable, чтобы заполнить ListItems в DropDownList, примерно так:

foreach (var item in GetValidAssociationsForSelectList())
{
    ddlAssociations.Items.Add(new ListItem(item.AssociationKey, item.LegalName));
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...