using Infrastructure; using Infrastructure.Attribute; using Infrastructure.Model; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using SqlSugar.IOC; using ZR.Admin.WebApi.Filters; using ZR.Model.Content; using ZR.Model.System; using ZR.Model.System.Dto; using ZR.Repository; using ZR.Service.IService; using ZR.ServiceCore.Services; namespace ZR.Service { /// /// 动态api示例,继承IDynamicApi,使用看swagger生成的地址 /// [AppService(ServiceType = typeof(IHelloService), ServiceLifetime = LifeTime.Transient)] public class HelloService : BaseService, IHelloService, IDynamicApi { /// /// 引用User服务 /// private readonly ISysUserService userService; /// /// /// /// public HelloService(ISysUserService userService) { this.userService = userService; } /// /// 数据库使用案例 /// /// /// public string SayHello(string name) { //构造函数式使用 var user = JsonConvert.SerializeObject(userService.GetFirst(f => f.UserId == 1)); Console.WriteLine(user); var postService = App.GetRequiredService(); Console.WriteLine(JsonConvert.SerializeObject(postService.GetId(1))); BaseRepository deptRepo = new(); Console.WriteLine(JsonConvert.SerializeObject(deptRepo.GetId(1))); var result = DbScoped.SugarScope.Queryable().Where(f => f.DictId == 1).First(); Console.WriteLine(JsonConvert.SerializeObject(result)); //切换库 //DbScoped.SugarScope.GetConnectionScope(2); GetFirst(x => x.CategoryId == 1); Context.Queryable().First(f => f.UserId == 1); return "Hello:" + name; } /// /// 返回json内容 /// /// /// [Verify] public ApiResult SayHello2([FromBody]SysUserDto userDto) { var user = userService.GetFirst(f => f.UserId == 2); return new ApiResult(100, "success", user); } public ApiResult SayHello3() { throw new CustomException("自定义异常"); } /// /// 返回json内容 /// /// /// [AllowAnonymous] public ApiResult SayHelloJson([FromBody] SysUserDto userDto) { return new ApiResult(100, "success", userDto); } } }