首页
/ ASP.NET Aspire 示例项目教程

ASP.NET Aspire 示例项目教程

2024-08-21 20:26:21作者:明树来

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

目录结构

aspire-samples/
├── .github/
├── .config/
├── src/
│   ├── Aspire.Demo.Web/
│   ├── Aspire.Demo.Service/
│   └── ...
├── tests/
│   ├── Aspire.Demo.Web.Tests/
│   └── ...
├── .gitignore
├── LICENSE
├── README.md
└── ...

目录介绍

  • .github/: 包含 GitHub 相关的配置文件,如工作流配置等。
  • .config/: 包含项目的配置文件,如 Docker 配置等。
  • src/: 包含项目的源代码,按模块划分,如 Aspire.Demo.WebAspire.Demo.Service
  • tests/: 包含项目的测试代码,如单元测试和集成测试。
  • .gitignore: 指定 Git 忽略的文件和目录。
  • LICENSE: 项目的开源许可证。
  • README.md: 项目的主文档,包含项目介绍、安装和使用说明等。

2. 项目的启动文件介绍

启动文件

src/Aspire.Demo.Web/ 目录下,主要的启动文件是 Program.csStartup.cs

Program.cs

using Microsoft.AspNetCore.Builder;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;

var builder = WebApplication.CreateBuilder(args);

// 添加服务到容器中
builder.Services.AddControllersWithViews();

var app = builder.Build();

// 配置HTTP请求管道
if (app.Environment.IsDevelopment())
{
    app.UseDeveloperExceptionPage();
}
else
{
    app.UseExceptionHandler("/Home/Error");
    app.UseHsts();
}

app.UseHttpsRedirection();
app.UseStaticFiles();

app.UseRouting();

app.UseAuthorization();

app.MapControllerRoute(
    name: "default",
    pattern: "{controller=Home}/{action=Index}/{id?}");

app.Run();

Startup.cs

using Microsoft.AspNetCore.Builder;
using Microsoft.Extensions.DependencyInjection;

namespace Aspire.Demo.Web
{
    public class Startup
    {
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddControllersWithViews();
        }

        public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            else
            {
                app.UseExceptionHandler("/Home/Error");
                app.UseHsts();
            }

            app.UseHttpsRedirection();
            app.UseStaticFiles();

            app.UseRouting();

            app.UseAuthorization();

            app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllerRoute(
                    name: "default",
                    pattern: "{controller=Home}/{action=Index}/{id?}");
            });
        }
    }
}

3. 项目的配置文件介绍

appsettings.json

src/Aspire.Demo.Web/ 目录下,主要的配置文件是 appsettings.json

{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft": "Warning",
      "Microsoft.Hosting.Lifetime": "Information"
    }
  },
  "AllowedHosts": "*"
}

配置文件介绍

  • Logging: 配置日志级别,包括默认日志级别、Microsoft 日志级别和 Microsoft.Hosting.Lifetime 日志级别。
  • AllowedHosts: 配置允许访问的主机,* 表示允许所有主机访问。

以上是 ASP.NET Aspire 示例项目的目录结构、启动文件和配置文件的介绍。希望这些内容能帮助你更好地理解和使用该项目。

登录后查看全文
热门项目推荐
相关项目推荐