Wms/Utility/UnitOfWork/SqlSugarUnitOfWork.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
Wms/Utility/Utility.csproj | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
Wms/WMS.BLL/BllTaskServer/BllTaskSyncServer.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
Wms/WMS.IBLL/IBllTaskServer/IBllTaskSyncServer.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
Wms/Wms/Startup.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
Wms/Utility/UnitOfWork/SqlSugarUnitOfWork.cs
New file @@ -0,0 +1,69 @@ using Microsoft.AspNetCore.Mvc.Filters; using SqlSugar; namespace Utility { /// <summary> /// SqlSugar 事务和工作单元 /// </summary> public sealed class SqlSugarUnitOfWork : IUnitOfWork { /// <summary> /// SqlSugar 对象 /// </summary> private readonly ISqlSugarClient _sqlSugarClient; /// <summary> /// 构造函数 /// </summary> /// <param name="sqlSugarClient"></param> public SqlSugarUnitOfWork(ISqlSugarClient sqlSugarClient) { _sqlSugarClient = sqlSugarClient; } /// <summary> /// 开启工作单元处理 /// </summary> /// <param name="context"></param> /// <param name="unitOfWork"></param> /// <exception cref="NotImplementedException"></exception> public void BeginTransaction(FilterContext context, UnitOfWorkAttribute unitOfWork) { _sqlSugarClient.AsTenant().BeginTran(); } /// <summary> /// 提交工作单元处理 /// </summary> /// <param name="resultContext"></param> /// <param name="unitOfWork"></param> /// <exception cref="NotImplementedException"></exception> public void CommitTransaction(FilterContext resultContext, UnitOfWorkAttribute unitOfWork) { _sqlSugarClient.AsTenant().CommitTran(); } /// <summary> /// 回滚工作单元处理 /// </summary> /// <param name="resultContext"></param> /// <param name="unitOfWork"></param> /// <exception cref="NotImplementedException"></exception> public void RollbackTransaction(FilterContext resultContext, UnitOfWorkAttribute unitOfWork) { _sqlSugarClient.AsTenant().RollbackTran(); } /// <summary> /// 执行完毕(无论成功失败) /// </summary> /// <param name="context"></param> /// <param name="resultContext"></param> /// <exception cref="NotImplementedException"></exception> public void OnCompleted(FilterContext context, FilterContext resultContext) { _sqlSugarClient.Dispose(); } } } Wms/Utility/Utility.csproj
@@ -24,6 +24,7 @@ <PackageReference Include="Serilog.Sinks.Async" Version="2.0.0" /> <PackageReference Include="Serilog.Sinks.Console" Version="6.0.0" /> <PackageReference Include="Serilog.Sinks.File" Version="5.0.0" /> <PackageReference Include="SqlSugarCore" Version="5.1.3.43" /> <PackageReference Include="System.Drawing.Common" Version="6.0.0" /> <PackageReference Include="ZXing.Net" Version="0.16.7" /> </ItemGroup> Wms/WMS.BLL/BllTaskServer/BllTaskSyncServer.cs
@@ -1,5 +1,6 @@ using Model.InterFaceModel; using Model.ModelDto.BllTaskDto; using Model.ModelDto.SysDto; using Model.ModelVm.BllTaskVm; using Newtonsoft.Json; using SqlSugar; @@ -7,6 +8,8 @@ using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Utility; using Utility.Tools; using WMS.BLL.LogServer; using WMS.DAL; @@ -27,6 +30,7 @@ public BllTaskSyncServer() : base(Db) { } /// <summary> /// 获取任务列表 /// </summary> Wms/WMS.IBLL/IBllTaskServer/IBllTaskSyncServer.cs
@@ -3,6 +3,7 @@ using System; using System.Collections.Generic; using System.Text; using System.Threading.Tasks; using WMS.Entity.BllTaskEntity; namespace WMS.IBLL.IBllTaskServer Wms/Wms/Startup.cs
@@ -20,6 +20,7 @@ using Utility.Extension; using Microsoft.Extensions.Options; using Microsoft.AspNetCore.Http; using SqlSugar; namespace Wms { @@ -121,6 +122,9 @@ //注册serilog services.AddConfigSerilog(); services.AddScoped<ApiResponseActionFilter>(); services.AddScoped<UnitOfWorkAttribute>(); services.AddSingleton<ISqlSugarClient>(DataContext.Db); // 单例注册 services.AddTransient<IUnitOfWork, SqlSugarUnitOfWork>(); // 事务与工作单元注册 } public void ConfigureContainer(ContainerBuilder builder) {