对于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”。确保已将实体类型添加到模型中。
答案 0 :(得分:0)
答案 1 :(得分:0)
在select查询中,您必须选择AccountReport的所有非可空列,因为select查询已分配给实体AccountReport。