使用存储库创建Restful服务

时间:2017-08-20 14:32:42

标签: c# web-services interface

我有一个mvc应用程序。我正在使用存储库模式和依赖注入模式。这是一个简单的界面:

[ServiceContract]
    public interface ICategoryService
    {
        [OperationContract]
        List<Category> GetAll();

        Category Add(Category category);
    }

实现此接口的具体类:

public class CategoryManager : ICategoryService
{
    private readonly ICategoryDal _categoryDal;

    public CategoryManager(ICategoryDal categoryDal)
    {
        _categoryDal = categoryDal;
    }

    public List<Category> GetAll()
    {
        return _categoryDal.GetWithSp();
    }

    public List<Category> GetAll(int a)
    {
        return _categoryDal.GetList();
    }

    public Category Add(Category category)
    {

       return _categoryDal.Add(category);
    }
}

我将这个具体类注入到global.asax中的接口。 现在我需要创建一个Web服务来公开这个接口中的一些方法(这个接口只是一个例子。不仅仅是这个)。 我怎么能通过一些努力来做到这一点?由于大多数此方法已经可以在Web应用程序上运行,因此可能只需要添加一些方法。

我可以将此界面作为合约使用,而不是创建新的吗?或者当我还需要使用其他界面时该怎么办?

1 个答案:

答案 0 :(得分:0)

你可以用它! 企业级应用程序架构,使用Web API,使用实体框架,通用存储库模式和工作单元。

using Web Api with generic repository