# WL.Think.Abp **Repository Path**: chewel/w.think.abp ## Basic Information - **Project Name**: WL.Think.Abp - **Description**: 基于 Abp VNext,扩展一些简化操作 - **Primary Language**: C# - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-01 - **Last Updated**: 2025-12-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # WL.Think.Abp ## Project Introduction WL.Think.Abp is a .NET development template based on the ABP desktop application development framework, providing foundational implementations of commonly used features such as multi-tenancy, permission management, data caching, audit logging, and automated documentation (Swagger). This template supports modular development and offers a complete, ready-to-use architecture suitable for rapidly building enterprise-level applications. ## Key Features - Multi-tenancy support - OpenIddict authentication and authorization - Database migration and seed data initialization - Swagger API auto-documentation - Exception handling and localization - AutoMapper configuration - Health checks - Common base classes and utility methods (e.g., pagination, category management) ## Module Composition - **AppHost**: Main application host module, integrating ASP.NET Core-related configurations - **Application.Contracts**: Definition of application service contracts - **Application**: Implementation of application services - **Core**: Core business logic and base classes - **Domain.Shared**: Pre-shared domain layer configurations - **Domain**: Publish business rules and repository interfaces - **EntityFrameworkCore**: EF Core data access layer - **HttpApi**: Base classes and configurations for Web API controllers - **DbMigrator**: Database migration and initialization module ## Installation and Deployment ### Local Development Environment - .NET 9.0 SDK - PostgreSQL or another supported database - Visual Studio 2022 or Visual Studio Code - Node.js (if using the frontend) ### Build and Run 1. Clone the repository ```bash git clone https://gitee.com/chewel/w.think.abp ``` 2. Restore dependencies ```bash cd w.think.abp dotnet restore ``` 3. Build the solution ```bash dotnet build WL.Think.Abp.sln ``` 4. Run database migration ```bash dotnet run -p samples/WL.Think.Sample.DbMigrator ``` 5. Run the main application ```bash dotnet run -p samples/WL.Think.Sample.AppHost ``` ## Usage Guide ### API Calls The base API controller provides standard RESTful interfaces: - `GET /api/sample/books` - Retrieve a paginated list - `GET /api/sample/books/{id}` - Retrieve details of a single item - `POST /api/sample/books` - Create a new item - `PUT /api/sample/books/{id}` - Update an item - `DELETE /api/sample/books/{id}` - Delete an item ### Data Migration Database schema migration and initial data deployment can be performed using the `ThinkDbMigrator` module. ### Multi-Tenancy The activation status of the multi-tenancy feature can be controlled via the `ThinkConsts.EnabledTenancy` static field. ## License This project is released under the [MIT License](./LICENSE) open-source agreement.