5

次のシナリオがあります: int:List<int> idsOnly = new List<int>(); のリストと、リスト idsOnly に一致する ID を持つすべてのアイテムを取得する必要があるオブジェクトの別のリスト

var myList = db.Items.Where(item => idsOnly.Contains(item.ID.Value))
                     .Select(a => new { a.Title })
                     .ToList();

myList からタイトルを取得するだけです。

どんな助けでも大歓迎です

4

5 に答える 5

14

コードは機能しますが、文字列型ではなく、匿名オブジェクトのリストを作成します

を使用する代わりに、タイトルのみを取得したい場合にのみ(a => new { a.Title }使用します。a => a.Title

var myList = db.Items.Where(item => idsOnly.Contains(item.ID.Value))
                     .Select(a => a.Title).ToList();
于 2012-09-26T08:07:36.127 に答える
1

あなたが使用することができますJoin

var titlesInIdList = from item in db.Items
                     join id in idsOnly
                     on item.ID.Value equals id
                     select item.Title;
var list = titlesInIdList.ToList();
于 2012-09-26T08:09:50.180 に答える
0
var myList =
    (from item in db.Items
    where idsOnly.Contains(item.ID.Value)
    select item.Title).ToList()
于 2012-09-26T08:09:46.077 に答える
0

あなたは試すことができます(変換に問題がある場合:IDをint型に変換し、int型でない場合)

var myList = db.Items.Where(item => (idsOnly.Contains(Convert.ToInt32(item.ID.Value)))).Select(a => a.Title ).ToList();

変換なし

var myList = db.Items.Where(item => (idsOnly.Contains(item.ID.Value))).Select(a => a.Title ).ToList();
于 2012-09-26T08:10:05.697 に答える