SqlSugarUnitOfWorkAttribute.cs 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using Furion.DependencyInjection;
  2. using System;
  3. using System.Data;
  4. namespace Admin.NET.Core
  5. {
  6. /// <summary>
  7. /// SqlSugar工作单元配置特性
  8. /// </summary>
  9. [SuppressSniffer, AttributeUsage(AttributeTargets.Method, Inherited = true)]
  10. public class SqlSugarUnitOfWorkAttribute : Attribute
  11. {
  12. /// <summary>
  13. /// 构造函数
  14. /// </summary>
  15. public SqlSugarUnitOfWorkAttribute()
  16. {
  17. }
  18. /// <summary>
  19. /// 构造函数
  20. /// </summary>
  21. /// <remarks>
  22. /// <para>支持传入事务隔离级别 <see cref="IsolationLevel"/> 参数值</para>
  23. /// </remarks>
  24. /// <param name="isolationLevel">事务隔离级别</param>
  25. public SqlSugarUnitOfWorkAttribute(IsolationLevel isolationLevel)
  26. {
  27. IsolationLevel = isolationLevel;
  28. }
  29. /// <summary>
  30. /// 事务隔离级别
  31. /// </summary>
  32. /// <remarks>
  33. /// <para>默认:<see cref="IsolationLevel.ReadCommitted"/>,参见:<see cref="IsolationLevel"/></para>
  34. /// <para>说明:当事务A更新某条数据的时候,不容许其他事务来更新该数据,但可以进行读取操作</para>
  35. /// </remarks>
  36. public IsolationLevel IsolationLevel { get; set; } = IsolationLevel.ReadCommitted;
  37. }
  38. }