我正在从 .NET Framework 过渡到 Core,虽然这是一个几乎无缝且有益的过程,但也存在一些困难。
最新的内容是如何执行相当简单的基于 EF 的任务,即从原始查询中获取结果并将这些结果映射到给定类型的对象列表中。在 Framework 中,我可以这样:
using (DbContext Context = new DbContext(Connection))
{
return Context.Database.SqlQuery<T>(Sql).ToList<T>();
}
Connection
是原始连接字符串,Sql
是原始查询字符串,T
任何已知适合输出的给定类型
在 Core 中,除了连接字符串之外,我似乎无法获取新的上下文,而且我也无法应用 SqlQuery
方法。在 Core 中必须有一种快速简便的方法来执行此操作,但我似乎找不到它。
我确实在项目中安装了 System.Data.Common
和 System.Data.SqlClient
,以及 EntityFrameworkCore
。
最佳答案
我认为我自己的问题的答案是,这在 EF Core 中根本无法完成——至少无法以这种非常自动的方式完成。它需要一些额外的工作,以手动解析和循环查询结果。这很不幸,但没什么大不了的。
关于sql - 将原始 SQL 结果映射到 .NET Core 中的对象列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50538665/