当前位置: 首页 > news >正文

首页调用网站栏目id企业网站前端建设

首页调用网站栏目id,企业网站前端建设,宁波最新消息今天,汽车报价大全官网1、新建ToDoController.cs继承基础控制器BaseApiController,但是一般业务代码不写在控制器内,业务代码写在Service,先新建统一返回值格式ApiResponse.cs: public class ApiResponse{public ApiResponse(bool status, string mess…

1、新建ToDoController.cs继承基础控制器BaseApiController,但是一般业务代码不写在控制器内,业务代码写在Service,先新建统一返回值格式ApiResponse.cs:

public class ApiResponse{public ApiResponse(bool status, string messages = ""){this.Message = messages;this.Status = status;}public ApiResponse(bool status, object result){this.Status = status;this.Result = result;}/// <summary>/// 后台消息/// </summary>public string Message { get; set; }/// <summary>/// 返回状态/// </summary>public bool Status { get; set; }/// <summary>/// 返回结果/// </summary>public object Result { get; set; }}

2、新建基础Service接口:IBaseService.cs,包含CRUD方法:

public interface IBaseService<T>{Task<ApiResponse> GetAllAsync();Task<ApiResponse> GetSingleAsync(int id);Task<ApiResponse> AddEntityAsync(T model);Task<ApiResponse> UpdateEntityAsync(T model);Task<ApiResponse> DeleteEntityAsync(int id);}

3、新建待办事项接口IToDoService.cs,继承IBaseService

public interface IToDoService : IBaseService<ToDo>{}

4、新建实现类ToDoService.cs,继承IToDoService.cs

public class ToDoService : IToDoService{private readonly IUnitOfWork unitOfWork;public ToDoService(IUnitOfWork unitOfWork){this.unitOfWork = unitOfWork;}/// <summary>/// 新增待办事项/// </summary>/// <param name="model"></param>/// <returns></returns>public async Task<ApiResponse> AddEntityAsync(ToDo model){try{await unitOfWork.GetRepository<ToDo>().InsertAsync(model);if(await unitOfWork.SaveChangesAsync() > 0){return new ApiResponse(true, model);}else{return new ApiResponse(false, "添加数据失败!");}}catch (Exception ex){return new ApiResponse(false, ex.Message);}}/// <summary>/// 删除待办事项/// </summary>/// <param name="id"></param>/// <returns></returns>public async Task<ApiResponse> DeleteEntityAsync(int id){try{var repository = unitOfWork.GetRepository<ToDo>();var todo = await repository.GetFirstOrDefaultAsync(predicate: t => t.Id.Equals(id));repository.Delete(todo);if (await unitOfWork.SaveChangesAsync() > 0){return new ApiResponse(true, "删除数据成功!");}else{return new ApiResponse(false, "删除数据失败!");}}catch (Exception ex){return new ApiResponse(false, ex.Message);}}/// <summary>/// 查询所有数据/// </summary>/// <returns></returns>public async Task<ApiResponse> GetAllAsync(){try{var repository = unitOfWork.GetRepository<ToDo>();var todo = await repository.GetAllAsync();if (todo != null){return new ApiResponse(true, todo);}else{return new ApiResponse(false, "查询数据失败!");}}catch (Exception ex){return new ApiResponse(false, ex.Message);}}/// <summary>/// 根据Id查询数据/// </summary>/// <param name="id"></param>/// <returns></returns>public async Task<ApiResponse> GetSingleAsync(int id){try{var repository = unitOfWork.GetRepository<ToDo>();var todo = await repository.GetFirstOrDefaultAsync(predicate: t => t.Id.Equals(id));if (todo != null){return new ApiResponse(true, todo);}else{return new ApiResponse(false, $"未查询到Id={id}的数据!");}}catch (Exception ex){return new ApiResponse(false, ex.Message);}}/// <summary>/// 更新数据/// </summary>/// <param name="model"></param>/// <returns></returns>/// <exception cref="NotImplementedException"></exception>public async Task<ApiResponse> UpdateEntityAsync(ToDo model){try{var repository = unitOfWork.GetRepository<ToDo>();var todo = await repository.GetFirstOrDefaultAsync(predicate: t => t.Id.Equals(model.Id));if (todo != null){todo.Title = model.Title;todo.Content = model.Content;todo.Status = model.Status;todo.UpdateDate = DateTime.Now;repository.Update(todo);if(await unitOfWork.SaveChangesAsync() > 0){return new ApiResponse(true, "更新数据成功!");}else{return new ApiResponse(true, "更新数据失败!");}}else{return new ApiResponse(false, $"未查询到Id={model.Id}的数据!");}}catch (Exception ex){return new ApiResponse(false, ex.Message);}}}

5、program.cs里面注入服务

builder.Services.AddTransient<IToDoService, ToDoService>();

6、ToDoController.cs里面依赖注入IUnitOfWork和IToDoService,并添加CURD的代码

public class ToDoController : BaseApiController{private readonly IUnitOfWork unitOfWork;private readonly IToDoService toDoService;public ToDoController(IUnitOfWork unitOfWork, IToDoService toDoService){this.unitOfWork = unitOfWork;this.toDoService = toDoService;}[HttpGet]public async Task<ApiResponse> GetToDoById(int Id){return await toDoService.GetSingleAsync(Id);}[HttpGet]public async Task<ApiResponse> GetAllToDo(){return await toDoService.GetAllAsync();}[HttpPost]public async Task<ApiResponse> AddToDo([FromBody] ToDo toDo){return await toDoService.AddEntityAsync(toDo);}[HttpDelete]public async Task<ApiResponse> DeleteToDo(int id){return await toDoService.DeleteEntityAsync(id);}[HttpPost]public async Task<ApiResponse> UpdateToDo(ToDo toDo){return await toDoService.UpdateEntityAsync(toDo);}}

7、F5运行项目

 

 

 

 

http://www.yayakq.cn/news/985142/

相关文章:

  • 石家庄网站建设 河北供求网江苏威达建设有限公司网站
  • 成都手机网站建设报价表常州网红餐厅有哪些
  • 杭州电子网站建设方案沁阳企业自助建站
  • 网站超大文件上传大型网站制作需要多少钱
  • 外贸自建站模板手机网站一键分享
  • 网站推广建设加盟做网站需要懂什么技术
  • 怎么做pp网站wordpress书画主题
  • 资阳住房和城乡建设厅网站佛山公司建网站
  • 资阳网站优化如何做网站诊断
  • 网站中国风模板做一个公司网站流程 由ui设计
  • 免费网站软件下载安装购物系统名称
  • 建设部设计规范网站如乐网站
  • 阿里巴巴网站图片怎么做的网站开发法律
  • 微信公众号做留言网站创意设计素材
  • 可以做视频的网站口腔网站建设
  • .net网站开发用的书籍电子商务专业怎么样
  • 怎么给自己喜欢的人做网站如何学会建网站
  • 优化建站网页设计html代码教程
  • 公司做网站需要哪些内容哪个不是网站开发工具
  • 重庆永川网站建设公司百度入口
  • 免费的网站入口在哪网站备案有什么好处
  • 经典网站赏析河南省建设监理协会官网
  • 北京站网站建设推广公司名字
  • 前端旅游网站行程怎么做wordpress authkey
  • 贞丰网站建设政务网站建设和技术维护制度
  • 哪个网站做免费广告好做问答网站要多少钱
  • 怎么查网站备案域名备案信息域名访问网站怎么进入
  • 云南省人防工程建设网站在线制作微信头像
  • 做网站的费用如何写分录哪个网站可以帮人做ppt
  • 没有域名可以做网站吗陕西省城乡建设学校网站