执行sql方法

This commit is contained in:
chenchun
2022-04-14 20:44:28 +08:00
parent d780529313
commit 3ed42384af
4 changed files with 47 additions and 4 deletions

View File

@@ -57,6 +57,12 @@
</summary>
<returns></returns>
</member>
<member name="M:Yi.Framework.ApiMicroservice.Controllers.TestController.SqlTest">
<summary>
执行sql返回对应Dto
</summary>
<returns></returns>
</member>
<member name="M:Yi.Framework.ApiMicroservice.Controllers.TestController.LocalTest">
<summary>
国际化测试

View File

@@ -36,22 +36,22 @@ namespace Yi.Framework.ApiMicroservice.Controllers
/// <returns></returns>
[HttpGet]
// 特点:化繁为简!意框架仓储代理上下文对象,用起来就是爽,但最好按规范来爽!
// 规范:控制器建议不要使用切换仓储方法控制器严禁使用DB上下文对象其它怎么爽怎么来
// 规范:控制器严禁使用切换仓储方法控制器严禁使用DB上下文对象其它怎么爽怎么来
public async Task<Result> DbTest()
{
//非常好使用UserService的特有方法
await _iUserService.DbTest();
//非常好依赖注入使用其他Service的特有方法(就tm一张表自己注入自己)
//非常好依赖注入使用其他Service的特有方法(就tm一张表现在自己注入自己)
await _iUserService.DbTest();
//很核理,使用仓储的通用方法
await _iUserService._repository.GetListAsync();
//挺不错,依赖注入其他仓储(就tm一张表自己注入自己)
//挺不错,依赖注入其他仓储(就tm一张表现在自己注入自己)
await _iUserService._repository.GetListAsync();
//不建议,但爽了再说,直接切换其他仓储(就tm一张表自己切换自己)
//严禁操作,直接切换其他仓储(就tm一张表现在自己切换自己)
await _iUserService._repository.ChangeRepository<Repository<UserEntity>>().GetListAsync();
//恭喜你已经毕业了!此后将有一天,接手到这个的软件的程序员将破口大骂。
@@ -60,6 +60,17 @@ namespace Yi.Framework.ApiMicroservice.Controllers
return Result.Success().SetData(await _iUserService.DbTest());
}
/// <summary>
/// 执行Sql返回对应Dto
/// </summary>
/// <returns></returns>
[HttpGet]
//简单语句不推荐!
public async Task<Result> SqlTest()
{
return Result.Success().SetData(await _iUserService._repository.UseSqlAsync<UserEntity>("select * from User"));
}
/// <summary>
/// 国际化测试
/// </summary>

View File

@@ -21,5 +21,8 @@ namespace Yi.Framework.Repository
public Task<List<T>> GetListAsync(QueryCondition pars);
public Task<bool> DeleteByLogicAsync(List<long> ids);
public Task<bool> UpdateIgnoreNullAsync(T entity);
public Task<List<S>> UseSqlAsync<S>(string sql);
public Task<bool> UseSqlAsync(string sql);
}
}

View File

@@ -36,6 +36,29 @@ namespace Yi.Framework.Repository
}
/// <summary>
/// 执行查询sql返回dto列表
/// </summary>
/// <typeparam name="S"></typeparam>
/// <param name="sql"></param>
/// <returns></returns>
public async Task<List<S>> UseSqlAsync<S>(string sql)
{
return await Db.Ado.SqlQueryAsync<S>(sql);
}
/// <summary>
/// 执行增删改sql返回状态
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public async Task<bool> UseSqlAsync(string sql)
{
return await Db.Ado.ExecuteCommandAsync(sql)>0;
}
/// <summary>
/// 添加返回实体