Aspnetboilerplate:如何执行原始 sql 查询
Aspnetboilerplate: How to execute raw sql query
如何在 asp.net core aspnetboilerplate 5.6.0,
中执行原始 sql 查询
似乎 entity framework 项目中引用了代码 3.1.4
我的代码如下
public interface ISqlExecuter
{
int Execute(string sql, params object[] parameters);
}
public class SqlExecuter : ISqlExecuter, ITransientDependency
{
private readonly IDbContextProvider<InsProDbContext> _dbContextProvider;
public SqlExecuter(IDbContextProvider<InsProDbContext> dbContextProvider)
{
_dbContextProvider = dbContextProvider;
}
public int Execute(string sql, params object[] parameters)
{
_dbContextProvider.GetDbContext().Database//<= Here I dont see any function to execute SQL query
//return 0;
//return _dbContextProvider.GetDbContext().Database.ExecuteSqlCommand(sql, parameters);
}
}
他们提供了扩展方法ExecuteSqlRaw
,你可以调用这个方法来运行查询。
你可以这样调用
dbContextProvider.GetDbContext().Database.ExecuteSqlRaw();
dbContextProvider.GetDbContext().Database.ExecuteSqlRawAsync();
如何在 asp.net core aspnetboilerplate 5.6.0,
中执行原始 sql 查询
似乎 entity framework 项目中引用了代码 3.1.4
我的代码如下
public interface ISqlExecuter
{
int Execute(string sql, params object[] parameters);
}
public class SqlExecuter : ISqlExecuter, ITransientDependency
{
private readonly IDbContextProvider<InsProDbContext> _dbContextProvider;
public SqlExecuter(IDbContextProvider<InsProDbContext> dbContextProvider)
{
_dbContextProvider = dbContextProvider;
}
public int Execute(string sql, params object[] parameters)
{
_dbContextProvider.GetDbContext().Database//<= Here I dont see any function to execute SQL query
//return 0;
//return _dbContextProvider.GetDbContext().Database.ExecuteSqlCommand(sql, parameters);
}
}
他们提供了扩展方法ExecuteSqlRaw
,你可以调用这个方法来运行查询。
你可以这样调用
dbContextProvider.GetDbContext().Database.ExecuteSqlRaw();
dbContextProvider.GetDbContext().Database.ExecuteSqlRawAsync();