实体框架将原始SQL查询绑定到模型类

时间:2017-04-15 18:47:04

标签: c# entity-framework

我得到了开发足球桌管理系统的任务。我决定使用asp.net mvc来做。唯一的要求是使用原始SQL查询。这意味着我不能使用linq或lambda。我想做这样的事情:

using (var context = new FootballTableContext())
{
     var players = context.Database.SqlQuery<PlayerViewModel>("SELECT Vardas, Pavarde FROM ZAIDEJAS").ToList();
}

但在执行此代码后,我会获得PlayerViewModel的{​​{1}}值列表。

ViewModel类:

null

上下文类:

public class PlayerViewModel
{
    public string FirstName { get; set; }
    public string LastName { get; set; }
}

所以我的问题是如何将该查询绑定到我的ViewModel?

1 个答案:

答案 0 :(得分:4)

这样做:

var players = dbContext.Database
    .SqlQuery<PlayerViewModel>("SELECT Vardas as FirstName, Pavarde as LastName FROM ZAIDEJAS")
    .ToList<PlayerViewModel>();

它被称为SQL queries for non-entity types