LingYanAspCoreFramework 8.9.1

LingYan_ASPFramework

介绍

LingYan_ASPFramework 是一个用于构建 ASP.NET Core 应用程序的框架,支持模块化架构、特性自动注册、动态路由、权限处理、全局过滤、仓储模式和工作单元模式。它旨在提高开发效率并简化常见的开发任务,如数据库操作、服务注册和请求处理。

使用说明

模块化基类

框架提供了多种模块化基类来支持应用程序的不同部分,包括:

  • BaseModule<WebApplicationBuilder, WebApplication>
  • BaseModule<IServiceCollection, IServiceProvider>
  • BaseModule<IServiceCollection, IConfigurationManager, IServiceProvider>

这些基类允许开发者以统一和可扩展的方式注册服务和初始化模块。

特性自动注册

框架支持通过特性自动注册服务和组件,这些特性包括:

  • LYTServiceAttribute: 用于标记服务类,实现自动服务注册。
  • LYInstanceAttribute: 用于标记需要注册为实例的类。
  • LYDynamicRouteAttribute: 用于支持动态路由的控制器类。
  • LYAuthorizeHandlerAttribute: 用于权限处理类。
  • LYGlobalFilterAttribute: 用于标记全局过滤器。
  • LYManagerAttribute: 用于领域管理类。
  • LYMiddlewareAttribute: 用于中间件类。
  • LYDbContextAttribute: 用于数据库上下文类。

这些特性简化了服务、路由和过滤器的注册过程,使得代码更加整洁和易维护。

仓储与工作单元

框架内置了仓储模式 (IRepository) 和工作单元模式 (IUnitOfWork) 来统一管理数据访问逻辑。这些接口支持同步和异步操作,包括:

  • 查询操作 (GetAll, GetPagedList)
  • 插入、更新和删除 (Insert, Update, Delete)
  • 聚合操作 (Count, Sum, Average)
  • 事务管理 (SaveChanges, SaveChangesAsync)

仓储模式支持多种数据库操作,如 SQL Server、MySQL 和 PostgreSQL,并且可以通过特性 (LYDbContextAttribute) 进行自定义配置。

安装与配置

要使用此框架,请确保您的项目已安装 .NET Core SDK 并支持 8.0 或更高版本。然后,将框架引用到您的项目中,并根据需求注册模块和数据库上下文。

示例代码

// 示例:服务注册
[LYTService(typeof(ITestService))]
public class TestService : ITestService
{
    public ResponceBody<string> TestBack()
    {
        return new ResponceBody<string>("Test successful", 200);
    }
}

// 示例:动态路由控制器
[LYDynamicRoute]
public class TestDynamicRoute : BaseDynamicRoute
{
    [HttpGet]
    public IActionResult TestGet()
    {
        return Ok("Dynamic route accessed via GET");
    }
}

许可证

本项目采用 MIT 许可证。详情请查看 LICENSE 文件。

贡献

欢迎贡献!如果您有任何想法或改进,请提交 Pull Request 或创建 Issue。

No packages depend on LingYanAspCoreFramework.

Version Downloads Last updated
8.9.3 4 2/12/2026
8.9.2 2 2/12/2026
8.9.1 10 2/1/2026
8.9.0 2 1/27/2026
8.0.8 2 1/27/2026
8.0.7 29 5/7/2025
8.0.6 12 5/7/2025
8.0.5 15 4/19/2025
8.0.4 10 4/19/2025
8.0.3 12 4/19/2025
8.0.2 12 4/19/2025
8.0.1 18 4/19/2025
8.0.0 12 4/16/2025
3.0.0 11 4/16/2025
2.0.8 19 1/17/2025
2.0.7 14 1/16/2025
2.0.6 12 1/16/2025
2.0.5 12 1/15/2025
2.0.4 11 1/15/2025
2.0.3 14 1/15/2025
2.0.2 13 1/15/2025
2.0.1 12 1/15/2025
2.0.0 15 1/15/2025
1.1.9 17 12/9/2024
1.1.8 11 12/9/2024
1.1.7 19 10/29/2024
1.1.6 14 10/29/2024
1.1.5 12 10/29/2024
1.1.4 14 10/29/2024
1.1.3 13 9/12/2024
1.1.2 11 9/9/2024
1.1.1 11 9/5/2024