【新增】增加sqlserver存储过程的调用方法封装。

This commit is contained in:
JianWeie
2022-05-11 15:30:32 +08:00
parent 9b35607659
commit f9c23221d4
4 changed files with 101 additions and 1 deletions

View File

@@ -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
/// 仓储通用接口类
/// </summary>
/// <typeparam name="T">泛型实体类</typeparam>
public interface IBaseRepository<T> where T : class, new()
public interface IBaseRepository<T> where T : class
{
/// <summary>
/// 根据主值查询单条数据
@@ -817,5 +818,25 @@ namespace CoreCms.Net.IRepository
/// <param name="sql"></param>
/// <returns></returns>
Task<List<T>> SqlQueryable(string sql);
/// <summary>
/// 执行调用存储过程返回DataTable
/// </summary>
/// <param name="useStoredProcedureName">存储过程名称</param>
/// <param name="parameters">参数</param>
/// <returns></returns>
Task<DataTable> SqlQueryDataTableByStoredProcedure(string useStoredProcedureName,
List<SugarParameter> parameters);
/// <summary>
/// 执行调用存储过程返回List<T>
/// </summary>
/// <typeparam name="T">返回类型</typeparam>
/// <param name="useStoredProcedureName">存储过程名称</param>
/// <param name="parameters">参数</param>
/// <returns></returns>
Task<List<T>> SqlQueryableByStoredProcedure(string useStoredProcedureName, List<SugarParameter> parameters);
}
}

View File

@@ -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
/// <param name="sql"></param>
/// <returns></returns>
Task<List<T>> SqlQueryable(string sql);
/// <summary>
/// 执行调用存储过程返回DataTable
/// </summary>
/// <param name="useStoredProcedureName">存储过程名称</param>
/// <param name="parameters">参数</param>
/// <returns></returns>
Task<DataTable> SqlQueryDataTableByStoredProcedure(string useStoredProcedureName,
List<SugarParameter> parameters);
/// <summary>
/// 执行调用存储过程返回List<T>
/// </summary>
/// <typeparam name="T">返回类型</typeparam>
/// <param name="useStoredProcedureName">存储过程名称</param>
/// <param name="parameters">参数</param>
/// <returns></returns>
Task<List<T>> SqlQueryableByStoredProcedure(string useStoredProcedureName, List<SugarParameter> parameters);
}
}

View File

@@ -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<T>(sql).ToListAsync();
return list;
}
/// <summary>
/// 执行调用存储过程返回DataTable
/// </summary>
/// <param name="useStoredProcedureName">存储过程名称</param>
/// <param name="parameters">参数</param>
/// <returns></returns>
public async Task<DataTable> SqlQueryDataTableByStoredProcedure(string useStoredProcedureName, List<SugarParameter> parameters)
{
var list = await DbBaseClient.Ado.UseStoredProcedure().GetDataTableAsync(useStoredProcedureName, parameters);//返回DataTable
return list;
}
/// <summary>
/// 执行调用存储过程返回List<T>
/// </summary>
/// <typeparam name="T">返回类型</typeparam>
/// <param name="useStoredProcedureName">存储过程名称</param>
/// <param name="parameters">参数</param>
/// <returns></returns>
public async Task<List<T>> SqlQueryableByStoredProcedure(string useStoredProcedureName, List<SugarParameter> parameters)
{
var list = await DbBaseClient.Ado.UseStoredProcedure().SqlQueryAsync<T>(useStoredProcedureName, parameters);//返回List
return list;
}
}
}

View File

@@ -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);
}
/// <summary>
/// 执行调用存储过程返回DataTable
/// </summary>
/// <param name="useStoredProcedureName">存储过程名称</param>
/// <param name="parameters">参数</param>
/// <returns></returns>
public async Task<DataTable> SqlQueryDataTableByStoredProcedure(string useStoredProcedureName, List<SugarParameter> parameters)
{
var list = await BaseDal.SqlQueryDataTableByStoredProcedure(useStoredProcedureName, parameters);//返回DataTable
return list;
}
/// <summary>
/// 执行调用存储过程返回List<T>
/// </summary>
/// <typeparam name="T">返回类型</typeparam>
/// <param name="useStoredProcedureName">存储过程名称</param>
/// <param name="parameters">参数</param>
/// <returns></returns>
public async Task<List<T>> SqlQueryableByStoredProcedure(string useStoredProcedureName, List<SugarParameter> parameters)
{
var list = await BaseDal.SqlQueryableByStoredProcedure(useStoredProcedureName, parameters);//返回List
return list;
}
}
}