1

非常に原始的な質問ですが、行き詰まっています(初心者だと思います)。私は会社のリストを私に送ることになっている機能を持っています:また、呼び出し元がドロップダウンリストのトップ要素も指定できるようにしたい..(「なし」の場合)。次のコードがあります。返される SelectList を使用して Top Element を追加する方法を教えてください。

    public static SelectList GetCompanies( bool onlyApproved, FCCIEntityDataContext entityDataContext, SelectListItem TopElement )
    {
        var cs = from c in entityDataContext.Corporates
                 where ( c.Approved == onlyApproved || onlyApproved == false )
                 select new
                 {
                     c.Id,
                     c.Company
                 };

        return new SelectList( cs.AsEnumerable(), "Id", "Comapny" );
    }

ありがとう!

4

4 に答える 4

2

この方法は常に私にとってうまくいきました。

public static SelectList GetCompanies( bool onlyApproved, FCCIEntityDataContext entityDataContext, SelectListItem TopElement )
    {
            var cs = from c in entityDataContext.Corporates
                             where ( c.Approved == onlyApproved || onlyApproved == false )
                             select new SelectListItem {
                                     Value = c.Id,
                                     Text = c.Company
                             };

            var list = cs.ToList();
            list.Insert(0, TopElement);

            var selectList = new SelectList( list, "Value", "Text" );
            selectList.SelectedValue = TopElement.Value;

            return selectList;
    }

更新は、これを行ったときに学んだ教訓を忘れていました。LINQ を SelectListItem として出力する必要があります。

于 2009-12-05T15:19:48.520 に答える
0
cs.ToList().Insert(0, new { TopElement.ID, TopElement.Company });
于 2009-12-05T15:19:15.603 に答える