Dommel 开源项目教程
DommelCRUD operations with Dapper made simple.项目地址:https://gitcode.com/gh_mirrors/do/Dommel
1. 项目的目录结构及介绍
Dommel 是一个用于简化 Dapper 库中 CRUD 操作的轻量级扩展库。以下是 Dommel 项目的主要目录结构及其介绍:
Dommel/
├── src/
│ ├── Dommel/
│ │ ├── Properties/
│ │ │ └── AssemblyInfo.cs
│ │ ├── DommelMapper.cs
│ │ ├── IPropertyResolver.cs
│ │ ├── DefaultPropertyResolver.cs
│ │ ├── ISqlBuilder.cs
│ │ ├── SqlBuilder.cs
│ │ ├── ITableNameResolver.cs
│ │ ├── DefaultTableNameResolver.cs
│ │ ├── IKeyPropertyResolver.cs
│ │ ├── DefaultKeyPropertyResolver.cs
│ │ ├── IColumnNameResolver.cs
│ │ ├── DefaultColumnNameResolver.cs
│ │ ├── ITypeMapProvider.cs
│ │ ├── TypeMapProvider.cs
│ │ ├── DommelMapperExtensions.cs
│ │ └── DommelMapperOptions.cs
│ └── Dommel.Tests/
│ ├── Properties/
│ │ └── AssemblyInfo.cs
│ ├── DommelMapperTests.cs
│ ├── PropertyResolverTests.cs
│ ├── SqlBuilderTests.cs
│ ├── TableNameResolverTests.cs
│ ├── KeyPropertyResolverTests.cs
│ ├── ColumnNameResolverTests.cs
│ └── TypeMapProviderTests.cs
├── .gitignore
├── Dommel.sln
├── LICENSE
└── README.md
目录结构说明:
src/Dommel/
:包含 Dommel 库的核心代码。DommelMapper.cs
:Dommel 的主要功能实现。IPropertyResolver.cs
及其实现类:用于解析实体类的属性。ISqlBuilder.cs
及其实现类:用于生成 SQL 语句。ITableNameResolver.cs
及其实现类:用于解析表名。IKeyPropertyResolver.cs
及其实现类:用于解析主键属性。IColumnNameResolver.cs
及其实现类:用于解析列名。ITypeMapProvider.cs
及其实现类:用于提供类型映射。
src/Dommel.Tests/
:包含 Dommel 库的单元测试。.gitignore
:Git 忽略文件配置。Dommel.sln
:Visual Studio 解决方案文件。LICENSE
:项目许可证。README.md
:项目说明文档。
2. 项目的启动文件介绍
Dommel 项目没有传统意义上的“启动文件”,因为它是一个库,而不是一个独立的应用程序。但是,核心功能主要在 DommelMapper.cs
文件中实现。
DommelMapper.cs
DommelMapper.cs
文件包含了 Dommel 库的主要功能,如 CRUD 操作的实现。以下是该文件的一些关键方法:
Get<TEntity>(IDbConnection connection, object id)
:根据主键获取实体。Insert<TEntity>(IDbConnection connection, TEntity entity)
:插入实体。Update<TEntity>(IDbConnection connection, TEntity entity)
:更新实体。Delete<TEntity>(IDbConnection connection, TEntity entity)
:删除实体。Project<TEntity, TProjection>(IDbConnection connection, object id)
:根据主键获取投影实体。
3. 项目的配置文件介绍
Dommel 项目没有传统意义上的“配置文件”,因为它是一个库,依赖于 Dapper 和 ADO.NET 进行数据库操作。但是,可以通过自定义解析器和构建器来配置 Dommel 的行为。
自定义配置
Dommel 允许通过实现以下接口来自定义行为:
IPropertyResolver
:自定义属性解析器。ISqlBuilder
:自定义 SQL 构建器。ITableNameResolver
:自定义表名解析器。IKeyPropertyResolver
:自定义主键属性解析器。IColumnNameResolver
:自定义列名解析器。ITypeMapProvider
:自定义类型映射提供器。
DommelCRUD operations with Dapper made simple.项目地址:https://gitcode.com/gh_mirrors/do/Dommel