DKh*_*naf 5 c# stored-procedures entity-framework-core asp.net-core
我正在尝试将ASP.NET 4.5应用程序移植到.NET Core,我有一个我似乎无法弄清楚的真正问题.
我现有的应用程序执行存储过程,返回带有多个数据表的数据集.实体框架可以自动将返回的字段映射到我的实体属性,但只能与数据集中的第一个数据表一起使用(自然).
所以我只想弄清楚它是否可能以某种方式拦截模型构建过程并使用自定义代码来处理数据集并查看其他数据表来设置实体字段.
我知道我可以直接使用正常的方式执行存储过程,SqlConnection
但我想知道实体框架是否有某种方法可以做到这一点.
Mik*_*ind 11
目前,执行返回数据的存储过程的DbSet.FromSql
方法是使用该方法.
using (var context = new SampleContext())
{
var data= context.MyEntity
.FromSql("EXEC GetData")
.ToList();
}
Run Code Online (Sandbox Code Playgroud)
这有一定的局限性:
DbSet
DbSet
类型的所有属性或者你可以回归到普通的ADO.NET:
using (var context = new SampleContext())
using (var command = context.Database.GetDbConnection().CreateCommand())
{
command.CommandText = "GetData";
command.CommandType = CommandType.StoredProcedure;
context.Database.OpenConnection();
using (var result = command.ExecuteReader())
{
// do something with result
}
}
Run Code Online (Sandbox Code Playgroud)
有计划在某个阶段引入对 SQL查询返回ad hoc类型的支持.
归档时间: |
|
查看次数: |
6612 次 |
最近记录: |