首页
/ 开源项目 `microservices-in-dotnetcore` 使用教程

开源项目 `microservices-in-dotnetcore` 使用教程

2024-08-20 16:35:42作者:劳婵绚Shirley

1. 项目的目录结构及介绍

microservices-in-dotnetcore/
├── src/
│   ├── Services/
│   │   ├── Catalog.API/
│   │   ├── Identity.API/
│   │   ├── Ordering.API/
│   │   ├── Web.Aggregator/
│   │   ├── WebMVC/
│   ├── BuildingBlocks/
│   │   ├── EventBus/
│   │   ├── EventBusRabbitMQ/
│   │   ├── EventBusServiceBus/
│   │   ├── IntegrationEventLogEF/
│   │   ├── WebHostCustomization/
│   ├── Services.Common/
│   │   ├── Common/
│   │   ├── Extensions/
│   │   ├── HealthChecks/
│   │   ├── Identity/
│   │   ├── Infrastructure/
│   │   ├── IntegrationEvents/
│   │   ├── Logging/
│   │   ├── Middleware/
│   │   ├── Model/
│   │   ├── Services/
│   │   ├── Swagger/
│   │   ├── ViewModels/
│   ├── UnitTests/
│   │   ├── Catalog.API.UnitTests/
│   │   ├── Identity.API.UnitTests/
│   │   ├── Ordering.API.UnitTests/
│   │   ├── Web.Aggregator.UnitTests/
│   │   ├── WebMVC.UnitTests/
├── tests/
│   ├── Services/
│   │   ├── Catalog.API.FunctionalTests/
│   │   ├── Identity.API.FunctionalTests/
│   │   ├── Ordering.API.FunctionalTests/
│   │   ├── Web.Aggregator.FunctionalTests/
│   │   ├── WebMVC.FunctionalTests/
├── .gitignore
├── LICENSE
├── README.md
├── global.json
├── MicroservicesInNetCore.sln

目录结构介绍

  • src/: 包含所有源代码文件。
    • Services/: 包含各个微服务项目的代码。
      • Catalog.API/: 商品目录微服务。
      • Identity.API/: 身份验证微服务。
      • Ordering.API/: 订单处理微服务。
      • Web.Aggregator/: 聚合器微服务。
      • WebMVC/: MVC Web 应用程序。
    • BuildingBlocks/: 包含共享的基础组件。
      • EventBus/: 事件总线组件。
      • EventBusRabbitMQ/: RabbitMQ 事件总线实现。
      • EventBusServiceBus/: Azure Service Bus 事件总线实现。
      • IntegrationEventLogEF/: 集成事件日志实体框架实现。
      • WebHostCustomization/: Web 主机自定义组件。
    • Services.Common/: 包含各个微服务共享的通用代码。
    • UnitTests/: 单元测试项目。
  • tests/: 包含功能测试项目。
  • .gitignore: Git 忽略文件配置。
  • LICENSE: 项目许可证。
  • README.md: 项目说明文档。
  • global.json: 全局配置文件。
  • MicroservicesInNetCore.sln: 解决方案文件。

2. 项目的启动文件介绍

Catalog.API 启动文件

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;

namespace Catalog.API
{
    public class Program
    {
        public static void Main(string[] args)
        {
            CreateHostBuilder(args).Build().Run();
        }

        public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                });
    }
}

Identity.API 启动文件

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore
登录后查看全文
热门项目推荐