は、ここに私のコードだと私は誰かが私を啓発することができ願っています:あなたがしようとしている。ここLINQ to Entitiesクエリでエンティティまたは複合型を構築できません。
0
A
答えて
1
var query = db.ProductGraphicsCards
.Where(pgc => pgc.GraphicsCardSKU.StartsWith(term))
.Select(pgc => new ProductGraphicsCard()
{
GraphicsCardSKU = pgc.GraphicsCardSKU,
GraphicsCardMemory = pgc.GraphicsCardMemory
};
私はこの問題はここにあると仮定します。マッピングされたエンティティProductGraphicsCard
に結果を抽出することはできません。マップされていないDTOまたは匿名のタイプに抽出しようとします。
var query = db.ProductGraphicsCards
.Where(pgc => pgc.GraphicsCardSKU.StartsWith(term))
.Select(pgc => new {
pgc.GraphicsCardSKU,
pgc.GraphicsCardMemory
};
1
.Select(pgc => new ProductGraphicsCard()
なぜ
public async Task<ActionResult> Search()
{
NameValueCollection filter = HttpUtility.ParseQueryString(Request.Params.ToString());
string term = filter["term"];
var query = db.ProductGraphicsCards
.Where(pgc => pgc.GraphicsCardSKU.StartsWith(term))
.Select(pgc => new ProductGraphicsCard()
{
GraphicsCardSKU = pgc.GraphicsCardSKU,
GraphicsCardMemory = pgc.GraphicsCardMemory
};
var products = await query.ToListAsync();
List<string> items = new List<string>();
foreach (var product in products)
{
items.Add(product.GraphicsCardSKU + "/" + product.GraphicsCardMemory.ToString());
}
return Json(items, JsonRequestBehavior.AllowGet);
}
は私にエラーを与え、私は理解できませんエンティティクラスに投影する私はその理由を伝えることはできませんが、Entity Framework(したがってNotSupportedException
)ではサポートされていません。この問題を解決するために
一つの方法は、匿名型に投影することである。
var query = db.ProductGraphicsCards
.Where(pgc => pgc.GraphicsCardSKU.StartsWith(term))
.Select(pgc => new
{
GraphicsCardSKU = pgc.GraphicsCardSKU,
GraphicsCardMemory = pgc.GraphicsCardMemory
};
var products = await query.ToListAsync();
// ...
+0
ありがとうございました! –
関連する問題
- 1. エンティティまたは複合型 ''をLINQ to Entitiesクエリで構築できません
- 2. LINQ to Entitiesクエリでエンティティを構築できません
- 3. エンティティまたは複合型 'FPSDB_newModel.Form_Attachment'は、LINQ to Entitiesクエリでは構築できません
- 4. エラー:LINQ to Entitiesクエリでエンティティまたは複合型を構築できません
- 5. エラー:LINQ to Entitiesクエリでエンティティまたは複合型を構築できません
- 6. エンティティまたは複合型 'AdministratorModel'をLINQ to Entitiesクエリで構築できません
- 7. エンティティまたは複合型 ''をLINQ to Entitiesクエリで構築することはできません.3つのテーブル外部結合
- 8. エンティティまたは複合型「XYZ」はエンティティへのLINQで構築することはできませんが、
- 9. LINQ to Entities複合クエリ
- 10. 2つのテーブルのデータを表示します(LINQ to Entitiesクエリでは構築できません)。
- 11. LINQ to Entitiesは(関連エンティティの)メソッドを認識しません
- 12. LINQ式のノード型 'Lambda'は、LINQ to Entitiesではサポートされていません
- 13. IEnumerable 'System.Collections.Generic.List`1を実装する型は、LINQ to Entitiesクエリで初期化できません。
- 14. LINQ to Entitiesクエリ内でCASTを使用できますか?
- 15. LINQ、datetimeを構築できません
- 16. LINQ To EntitiesはLastメソッドを認識しません。本当に?このクエリで
- 17. Entity Framework 4 LINQ to Entities WCFでのクエリ
- 18. 指定された型メンバーは、LINQ to Entitiesではサポートされていません。 - Linq .Contains
- 19. LINQ to Entities - メソッドをストア式に変換することはできません
- 20. System.NotSupportedException: 'LINQ式のノードタイプ' Invoke 'はLINQ to Entitiesでサポートされていません。
- 21. ラムダ式を使用したLINQ-to-Entitiesクエリで可能です
- 22. Linq to Sql - L2Sエンティティのディープコピーを作成できません
- 23. LINQ to Entitiesは、 'System.String get_Item(System.String)'メソッドを認識しません。
- 24. asp.net web api 2 LINQ to Entitiesはメソッドを認識しません
- 25. LINQ to EntitiesはToArrayを認識しません
- 26. LINQ to Entitiesは、 'System.Object get_Item(System.String)'メソッドを認識しません。Epicor10
- 27. LINQ to Entitiesは、System.Stringのメソッドを認識しません。
- 28. LINQ to Entitiesはメソッドを認識しません
- 29. LINQ to Entitiesはget_Item(Int32)メソッドのメソッドを認識しません
- 30. LINQ to Entitiesは、 'System.DateTime Parse(System.String)'メソッドを認識しません。
完全に追加してください。 –