如何将ABP应用程序服务路由到多个实现?

问题描述 投票:0回答:2

我正在使用ASP.NET Boilerplate(ABP)。

我希望有一个以多种方式实现的通用应用程序服务。阅读文档,似乎需要我为每个类创建一个接口。我想拥有一个通用接口,并能够将其路由到已实现的类。有没有办法做到这一点?

public interface IMyAppService : IApplicationService
{
    Task<DataTableCollection> PostData(string action, string data);
}

public class myclass1 : IMyAppService
{
    public async Task<DataTableCollection> PostData(string action, string data)
    {
        ...
    }
}

public class myclass2 : IMyAppService
{
    public async Task<DataTableCollection> PostData(string action, string data)
    {
        ...
    }
}

然后在我的应用程序中,通过/ app / myclass1和/ app / myclass2等路径访问它们。

c# dependency-injection interface asp.net-mvc-routing aspnetboilerplate
2个回答
0
投票

那应该已经有效了。对于依赖注入,建议使用每个类的接口(尽管不是必需的),但这与此无关。

你只需要实现IApplicationService Interface


0
投票

如果你这样做是为了概括CRUD操作,那么就已经有了这样一个接口AsyncCrudAppService

public class TaskAppService : AsyncCrudAppService<Task, TaskDto>, ITaskAppService
{
    public TaskAppService(IRepository<Task> repository) 
        : base(repository)
    {

    }
}

https://aspnetboilerplate.com/Pages/Documents/Application-Services#crudappservice-and-asynccrudappservice-classes

© www.soinside.com 2019 - 2024. All rights reserved.