diff --git a/CoreCms.Net.IRepository/IBaseRepository.cs b/CoreCms.Net.IRepository/IBaseRepository.cs index 53eccce7..7170583d 100644 --- a/CoreCms.Net.IRepository/IBaseRepository.cs +++ b/CoreCms.Net.IRepository/IBaseRepository.cs @@ -10,6 +10,7 @@ using System; using System.Collections.Generic; +using System.Data; using System.Linq.Expressions; using System.Threading.Tasks; using CoreCms.Net.Model.ViewModels.Basics; @@ -21,7 +22,7 @@ namespace CoreCms.Net.IRepository /// 仓储通用接口类 /// /// 泛型实体类 - public interface IBaseRepository where T : class, new() + public interface IBaseRepository where T : class { /// /// 根据主值查询单条数据 @@ -817,5 +818,25 @@ namespace CoreCms.Net.IRepository /// /// Task> SqlQueryable(string sql); + + + /// + /// 执行调用存储过程(返回DataTable) + /// + /// 存储过程名称 + /// 参数 + /// + Task SqlQueryDataTableByStoredProcedure(string useStoredProcedureName, + List parameters); + + /// + /// 执行调用存储过程(返回List) + /// + /// 返回类型 + /// 存储过程名称 + /// 参数 + /// + Task> SqlQueryableByStoredProcedure(string useStoredProcedureName, List parameters); + } } \ No newline at end of file diff --git a/CoreCms.Net.IServices/IBaseServices.cs b/CoreCms.Net.IServices/IBaseServices.cs index 71b0f191..07489178 100644 --- a/CoreCms.Net.IServices/IBaseServices.cs +++ b/CoreCms.Net.IServices/IBaseServices.cs @@ -11,6 +11,7 @@ using System; using System.Collections.Generic; +using System.Data; using System.Linq.Expressions; using System.Threading.Tasks; using CoreCms.Net.Model.ViewModels.Basics; @@ -815,5 +816,25 @@ namespace CoreCms.Net.IServices /// /// Task> SqlQueryable(string sql); + + /// + /// 执行调用存储过程(返回DataTable) + /// + /// 存储过程名称 + /// 参数 + /// + Task SqlQueryDataTableByStoredProcedure(string useStoredProcedureName, + List parameters); + + /// + /// 执行调用存储过程(返回List) + /// + /// 返回类型 + /// 存储过程名称 + /// 参数 + /// + Task> SqlQueryableByStoredProcedure(string useStoredProcedureName, List parameters); + + } } \ No newline at end of file diff --git a/CoreCms.Net.Repository/BaseRepository.cs b/CoreCms.Net.Repository/BaseRepository.cs index 6d877abc..bd96d025 100644 --- a/CoreCms.Net.Repository/BaseRepository.cs +++ b/CoreCms.Net.Repository/BaseRepository.cs @@ -10,6 +10,7 @@ using System; using System.Collections.Generic; +using System.Data; using System.Linq.Expressions; using System.Threading.Tasks; using CoreCms.Net.IRepository; @@ -1299,5 +1300,33 @@ namespace CoreCms.Net.Repository var list = await DbBaseClient.SqlQueryable(sql).ToListAsync(); return list; } + + + /// + /// 执行调用存储过程(返回DataTable) + /// + /// 存储过程名称 + /// 参数 + /// + public async Task SqlQueryDataTableByStoredProcedure(string useStoredProcedureName, List parameters) + { + var list = await DbBaseClient.Ado.UseStoredProcedure().GetDataTableAsync(useStoredProcedureName, parameters);//返回DataTable + return list; + } + + + /// + /// 执行调用存储过程(返回List) + /// + /// 返回类型 + /// 存储过程名称 + /// 参数 + /// + public async Task> SqlQueryableByStoredProcedure(string useStoredProcedureName, List parameters) + { + var list = await DbBaseClient.Ado.UseStoredProcedure().SqlQueryAsync(useStoredProcedureName, parameters);//返回List + return list; + } + } } \ No newline at end of file diff --git a/CoreCms.Net.Services/BaseServices.cs b/CoreCms.Net.Services/BaseServices.cs index 2ccbfb44..84c8adc1 100644 --- a/CoreCms.Net.Services/BaseServices.cs +++ b/CoreCms.Net.Services/BaseServices.cs @@ -10,6 +10,7 @@ using System; using System.Collections.Generic; +using System.Data; using System.Linq.Expressions; using System.Threading.Tasks; using CoreCms.Net.IRepository; @@ -1093,5 +1094,33 @@ namespace CoreCms.Net.Services { return await BaseDal.SqlQueryable(sql); } + + + /// + /// 执行调用存储过程(返回DataTable) + /// + /// 存储过程名称 + /// 参数 + /// + public async Task SqlQueryDataTableByStoredProcedure(string useStoredProcedureName, List parameters) + { + var list = await BaseDal.SqlQueryDataTableByStoredProcedure(useStoredProcedureName, parameters);//返回DataTable + return list; + } + + + /// + /// 执行调用存储过程(返回List) + /// + /// 返回类型 + /// 存储过程名称 + /// 参数 + /// + public async Task> SqlQueryableByStoredProcedure(string useStoredProcedureName, List parameters) + { + var list = await BaseDal.SqlQueryableByStoredProcedure(useStoredProcedureName, parameters);//返回List + return list; + } + } } \ No newline at end of file