必要なデータを返すlinqクエリを作成しました。返された結果に余分なフィールド。私のエンティティには、多くの運がなければ別のテーブルに対してマップしようとしているIDフィールドが含まれています。linqサブクエリを作成するとエラーが返される "Contains演算子以外のクエリ演算子のLINQ to SQL実装でローカルシーケンスを使用できない"
これはこれまで私が行ってきたことです。私がやろうとしています何
Dictionary<int, string> itemDescriptions = new Dictionary<int, string>();
foreach (var item in ItemDetails)
{
itemDescriptions.Add(item.ItemID, item.ItemDescription);
}
DB.TestDatabase db = new DB.TestDatabase(Common.GetOSConnectionString());
List<Transaction> transactionDetails = (from t db.Transactions
where t.CardID == CardID.ToString()
select new Transaction
{
ItemTypeID= t.ItemTypeID,
TransactionAmount = t.TransactionAmount,
ItemDescription = itemDescriptions.Select(r=>r.Key==itemTypeID).ToString()
}).ToList();
は、キー=が、私はこのエラーを取得しています
をitemTypeID dictonaryからキー値です。
LINQからSQLへのContains演算子以外のクエリの実装では、ローカルシーケンスを使用できません。
変更する必要はありますか?