首页 > 解决方案 > ASP.NET 核心 Web API

问题描述

我正在尝试创建一个多层 .NET Core API 项目 - API 项目、应用程序层、域层、数据访问层和一个 IoC 层,其中所有依赖项都已解决,最后在 Startup 的 ConfigureServices() 方法中调用它。 cs类。

在 IoC 项目中,添加了对数据访问层和域层的引用,并解决了依赖关系,如下所示:

 namespace ToDo.Infrastructure.IoC
{
    public class DependencyContainer
    {
        public static void RegisterDependencies(IServiceCollection services, IConfiguration configuration)
        {
            services.AddDbContext<ToDoDbContext>(op => op.UseSqlServer(configuration.GetConnectionString("dbConnection")));
            services.AddScoped<IUserRepository, UserRepository>();
        }
    }
}

在 Startup.cs

public void ConfigureServices(IServiceCollection services)
        {
            services.AddControllers();
            DependencyContainer.RegisterDependencies(services, Configuration);
        }

它运行良好,但问题是现在 API 项目可以访问我不想要的所有数据访问层的公共类。有没有其他方法可以解决依赖关系,使得 API 项目无法访问数据访问层/域层?

标签: restarchitectureasp.net-core-webapi

解决方案


推荐阅读