这是基于vue-vben-admin 模板适用于abp vNext的前端管理项目
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

3.3 KiB

PackageName.CompanyName.ProjectName

English | 中文

快速启动指南

本指南将帮助您快速设置和运行项目。请按照以下步骤开始。

前提条件

  • .NET SDK 9.0 或更高版本
  • 支持的数据库(SQL Server、MySQL、PostgreSQL、Oracle 或 SQLite)
  • PowerShell 7.0+(推荐用于运行迁移脚本)

第一步:还原和构建项目

# 导航到项目根目录
cd /path/to/project

# 还原依赖项
dotnet restore

# 构建解决方案
dotnet build

第二步:创建数据库结构

使用 Migrate.ps1 脚本创建数据库表结构:

# 导航到 migrations 目录
cd migrations

# 运行迁移脚本
./Migrate.ps1

该脚本将:

  1. 检测项目中可用的 DbContext 类
  2. 要求您选择用于迁移的 DbContext
  3. 提示输入迁移名称
  4. 创建迁移
  5. 可选地为迁移生成 SQL 脚本

第三步:初始化种子数据

运行 DbMigrator 项目来初始化种子数据:

# 导航到 DbMigrator 项目目录
cd migrations/PackageName.CompanyName.ProjectName.AIO.DbMigrator

# 运行 DbMigrator 项目
dotnet run

DbMigrator 将:

  1. 应用所有数据库迁移
  2. 初始化种子数据(用户、角色等)
  3. 如适用,设置租户配置

第四步:启动应用程序

成功设置数据库后,您可以运行 host 项目:

# 导航到 host 项目目录
cd host/PackageName.CompanyName.ProjectName.AIO.Host

# 运行 host 项目
dotnet run --launch-profile "PackageName.CompanyName.ProjectName.Development"

应用程序将启动并可通过配置的 URL 访问(通常是 https://localhost:44300)。

基于数据库的单元测试

要运行基于数据库的单元测试,请按照以下步骤操作:

第一步:准备测试数据库

在运行测试之前,确保测试数据库存在。测试数据库连接字符串在 ProjectNameEntityFrameworkCoreTestModule.cs 文件中定义。

默认连接字符串是:

private const string DefaultPostgresConnectionString =
    "Host=127.0.0.1;Port=5432;Database=test_db;User Id=postgres;Password=postgres;";

您可以手动创建此数据库或修改连接字符串以使用现有数据库。

第二步:配置测试环境

如需修改 ProjectNameEntityFrameworkCoreTestModule.cs 中的连接字符串:

// 您也可以设置环境变量来覆盖默认连接字符串
var connectionString = Environment.GetEnvironmentVariable("TEST_CONNECTION_STRING") ??
                       DefaultPostgresConnectionString;

第三步:运行测试

运行 Application.Tests 项目:

# 导航到测试项目目录
cd tests/PackageName.CompanyName.ProjectName.Application.Tests

# 运行测试
dotnet test

测试框架将:

  1. 创建清洁的测试数据库环境
  2. 运行所有单元测试
  3. 报告测试结果

关于命名的说明

这是一个模板项目,所以所有项目名称包含的占位符在使用模板创建新项目时将被替换:

  • PackageName 将被替换为您的包名
  • CompanyName 将被替换为您的公司名
  • ProjectName 将被替换为您的项目名

当从此模板创建新项目时,您将指定这些值,它们将在整个解决方案中进行替换。