簡體   English   中英

EF7 beta8 FromSQL

[英]EF7 beta8 FromSQL

對於EF7 FromSQL解析sql查詢以獲取實體列表。

var accounts = _context.Set<Account>().FromSql("SELECT TOP 10 * FROM Account WITH  
(NOLOCK)").ToList();

上面的代碼將返回實體列表,但要滿足某些條件。

var report = _context.Set<AccountReport>().FromSql("SELECT a.Id, a.Username, p.Item,
p.Quantity FROM Account AS a WITH (NOLOCK) INNER JOIN Purchase AS p WITH (NOLOCK) ON 
p.AccountId = a.Id WHERE p.CreatedOn BETWEEN '2015-11-01' AND '2015-12-01').ToList();

模型“ AccountReport”不是實體模型,它將遇到此錯誤消息。

錯誤

Microsoft.Data.Entity.Metadata.ModelItemNotFoundException'發生在EntityFramework.Core.dll中,但未在用戶代碼中處理

附加信息:找不到實體類型“ AccountReport”。 確保已將實體類型添加到模型中。

當您嘗試獲取未綁定到DBSet的數據時,這應該會有所幫助。

EF7獲取動態數據,未綁定到DBSet

另一種方法是像這里一樣寫LINQ

Linq在EF7中獲取動態數據

在選擇查詢中,由於選擇查詢已分配給實體AccountReport,因此必須選擇AccountReport的所有非空列。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM