using Admin.NET.Application.Const; using Furion.DatabaseAccessor; using Furion.FriendlyException; using Furion.Localization; using Furion.Logging.Extensions; using Microsoft.AspNetCore.Authorization; namespace Admin.NET.Application.Service; /// /// 自己业务服务 /// [ApiDescriptionSettings(ApplicationConst.GroupName, Order = 200)] [AllowAnonymous] public class TestService : IDynamicApiController, ITransient { private readonly SqlSugarRepository _testRep; public TestService(SqlSugarRepository testRep) { _testRep = testRep; } /// /// 测试 /// public string GetName() { return "Furion"; } /// /// 获取列表 /// /// [HttpGet("/test/list")] public async Task> GetTestList() { return await _testRep.GetListAsync(); } /// /// 异常测试 /// /// public void TestException() { throw new Exception("异常"); throw Oops.Oh("异常").WithData("数据"); } /// /// 事务和工作单元测试 /// /// [HttpGet("/test/list2")] [UnitOfWork] public async Task> TestUnitOfWork() { await _testRep.InsertAsync(new Test() { Name = "admin" }); var a = 1; var b = 0; var c = a / b; return await _testRep.GetListAsync(); } /// /// 多语言测试 /// /// public string TestCulture() { "ddd".LogWarning(); //L.SetCulture("zh-CN"); //var a = L.GetSelectCulture(); //var a1 = L.Text["API Interfaces"]; //return $"当前语言【{a.Culture.Name}】 {a1}"; L.SetCulture("en-US"); var b = L.GetSelectCulture(); var b1 = L.Text["API 接口"]; return $"当前语言【{b.Culture.Name}】 {b1}"; } /// /// 自定义规范化结果 /// /// [CustomUnifyResult("APP")] public string CustomUnifyResult() { return "Furion"; } }