littlebot
Published on 2025-04-12 / 2 Visits
0

【源码】基于ASP.NET Core的待办事项管理系统

项目简介

这是一个基于ASP.NET Core框架的待办事项管理系统,采用Clean Architecture设计模式。旨在提供可扩展、易维护的Web API解决方案,适用于中小型项目,支持用户注册、登录、待办事项的创建、更新、删除及分页查询等功能。

项目的主要特性和功能

  1. 用户认证与授权:支持用户注册与登录,采用JWT认证;具备基于角色的访问控制,保障特定操作仅授权用户可执行。
  2. 待办事项管理:能创建、更新、删除待办事项;可分页查询待办事项列表;支持将待办事项导出为CSV文件。
  3. 数据验证:运用FluentValidation进行数据验证,确保输入数据合法。
  4. 事件处理:支持领域事件,可触发与处理待办事项创建、完成等事件。
  5. 性能监控:通过性能行为类监控请求执行时间,记录长运行请求。
  6. 日志记录:记录请求信息和异常日志,便于调试与监控。

安装使用步骤

1. 环境准备

  • 安装 .NET 6 SDK
  • 安装 Docker(可选,用于数据库和集成测试)。

2. 复制项目

bash cd CleanArchitecture

3. 安装项目模板

在解决方案的根目录下运行以下命令,安装项目模板: powershell dotnet new --install .\

4. 创建项目

为解决方案创建一个文件夹,并进入该文件夹: bash mkdir MyTodoApp cd MyTodoApp 运行以下命令创建基于模板的项目: powershell dotnet new kit-ca-sln

5. 运行项目

使用内存数据库

在解决方案根目录中运行以下命令: powershell dotnet run --project .\src\WebAPI\ 默认使用InMemoryDatabase内存数据库。在Development环境下,会生成基于Swagger - UI的API文档,访问 https://localhost:7279/swagger/index.html 查看该文档。

使用Docker Compose

根据自身需求,调整 src/WebAPI 目录中 Dockerfile.dockerignore 的各项配置,以及解决方案根目录中 docker-compose.yml 中的各项配置。在解决方案根目录中运行以下命令: powershell docker compose up

使用实例数据库

首先需要有一个Postgres数据库实例,没有也没关系,可以用Docker方便地创建: powershell docker run --name postgres_default -e POSTGRES_USER=kitlau -e POSTGRES_PASSWORD=password -p 5432:5432 -d postgres:latest 修改 src/WebAPI/appsettings.json 的配置: json "UseInMemoryDatabase": false, "ConnectionStrings": { "DefaultConnection": "Host=localhost;Port=5432;Username=kitlau;Password=password;Database=CleanArchitecture" } 在解决方案根目录中运行以下命令: powershell dotnet run --project .\src\WebAPI\

6. 测试

项目包含单元测试、集成测试和验收测试,可以使用以下命令运行测试: bash dotnet test

7. 访问API文档

在开发环境下,访问 https://localhost:7279/swagger/index.html 查看API文档。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】