我必须从数据库中选择多个列,但我没有匹配的实体。 所以我的查询看起来像这样:
var result = _dbContext.Database.SqlQuery<List<string>>(
"select ID, NAME, DB_FIELD from eis_hierarchy");
我收到结果集,每行包含字符串列表但count为0。
那么如何使用Database.SqlQuery
选择多个列?
答案 0 :(得分:45)
您必须将结果捕获到具有匹配属性名称的类中,并且(至少)是无参数构造函数:
class DbResult
{
public int ID { get; set; }
public string NAME { get; set; }
public string DB_FIELD { get; set; }
}
var result = _dbContext.Database.SqlQuery<DbResult>(
"select ID, NAME, DB_FIELD from eis_hierarchy");