15. WebAPI
2017-08-30 本文已影响18人
落地成佛
一、概述
Abp框架可以自动、动态的为应用层建立一个web api :
二、使用
2.1 应用层代码:
public class TaskAppService : Learn_ABPAppServiceBase, ITaskAppService
{
private readonly IRepository<Task> _taskRepository;
private readonly ITaskCache _taskCache;
public TaskAppService(IRepository<Task> taskRepository,ITaskCache taskCache)
{
_taskRepository = taskRepository;
_taskCache = taskCache;
}
public GetTasksOutput GetTasks(GetTasksInput input)
{
var query = _taskRepository.GetAll();
return new GetTasksOutput
{
Tasks = Mapper.Map<List<TaskDto>>(query.ToList())
};
}
}
2.2 查看WebApi
Paste_Image.png2.3 WebApi地址分析
- api/services为系统默认
- app在webapi配置模块决定 代码如下:
Configuration.Modules.AbpWebApi().DynamicApiControllerBuilder
.ForAll<IApplicationService>(typeof(Learn_ABPApplicationModule).Assembly, "app")
.Build();
- Task 是应用层TaskAppService前缀Task
- GetAll 是应用层对应的方法