ORM generator
https://msdn.microsoft.com/library/cc467894.aspx
POCO = Plain Old CLR (or better: Class) Object
DTO = Data Transfer Object
DDD=domain driven design
PO是指持久对象(Persistant Object)
DO(Domain Object)
领域模型(Domain Model)
VO是指View Object。VO的特性是数据绑定。
nuget Package mananger 程序包管理控制器
https://www.codeproject.com/Articles/265347/Library-for-scripting-SQL-Server-database-objects 兩個數据庫比較
https://www.codeproject.com/Articles/17107/Stored-Procedure-Generator-Advance 存储过程管理
https://www.codeproject.com/Articles/892233/POCO-Generator 表,视图,存储过程,表函数管理 vs2012
https://www.codeproject.com/Articles/46944/Generating-Class-Representations-Of-SQL-Tables
https://www.codeproject.com/Articles/27830/SQL-Class-Shell-Generator 表成生类
https://github.com/jaklithn/POCOGenerator vs2012
https://github.com/CollaboratingPlatypus/PetaPoco
https://www.codeproject.com/Articles/6677/Generate-SQL-Insert-statements-for-your-SQL-Server
https://www.codeproject.com/articles/615499/models-poco-entity-framework-and-data-patterns Models (POCO), Entity Framework and Data Patterns.
https://github.com/codedemonuk/json-schema-to-poco vs2012
https://github.com/schotime/NPoco vs2012 Simple microORM that maps the results of a query onto a POCO object. Project based on Schotime's
branch of PetaPoco
https://salardbcodegenerator.codeplex.com/ vs2012
Project Description
This application is aimed to generate .NET class and methods for databases and model them based on customizable patterns.
SalarDbCodeGenerator is a database first, code generator. It uses customizable patterns to generate different codes and models for applications.
The generator engine is mostly optimized for C# but it can be used to generate any other programming language code.
Supported Databases
Micorsoft SQL Server (2000/2005/2008/2012)
(Supports columns description)
SQL Server Compact Edition 4
Oracle Database (8i/9i/10g/11g)
SQLite (v3 and above)
Features
Customizable patterns
Tables foreign key relations
Tables constraint keys
Columns description
Ignored prefixes / Ignored suffixes
Prefix for tables / Suffix for tables
Prefix for views / Suffix for views
Renaming Options (Remove underline / Case Change / Underline is word delimiter)
Default Namespace
Ability to generate code for any programming language
Patterns (Installed by default)
* Entity Framework Code First
* NHibernate Mapping By Code
* NHibernate ActiveRecord
* LinqToSql C#
* Entity Framework 4 POCO
* DapperAccess
* 3Tier
https://github.com/TechnoDezi/SqlBatchScriptRunner
https://www.codeproject.com/Articles/205011/SQL-Server-Database-Comparison-Tool
Application Roles
Database Roles
Defaults
FullText Catalogs
FullText StopLists - only for SQL Server 2008
User Defined Table Types - only for SQL Server 2008
Message Types
Partition Functions
Partition Schemes
Plan Guides
Remote Service Bindings
Rules
Schemas
Service Contracts
Queues
Routes
Assemblies
Stored Procedures
DDL Triggers
View
Synonyms
Tables
Users
User Defined Aggregates
User Defined Types
User Defined Functions
User Defined Data Types
Xml Schema Collections
Indexes
https://www.codeproject.com/Articles/8397/C-Code-Generator-for-Stored-Procedures 根据存儲過程名稱建代碼
https://www.codeproject.com/Articles/891056/Automatic-Table-Generation-in-any-database-by-NHib
Xml Data Mapper - a simple xml based ORM, database to object, POCO / DTO mapper
http://xmldatamapper.codeplex.com/
https://nmg.codeplex.com/
https://github.com/rvrn22/nmg
1. Supports Oracle, SqlServer, PostgreSQL, MySQL, SQLite, Sybase, Ingres, CUBRID
2. Can generate hbm.xml, Fluent NHibernate and NH 3.3 Fluent style of mapping files.
3. Has lots of preferences to control the property naming conventions.
4. Can generate Domain Entity and WCF Data Contracts too.
5. Can generate one table at a time or script entire DB in one go. (It can generate mapping for around 800 tables in under 3 minutes on my moderately powered laptop)
6. Supports ActiveRecord code generation.
7. Its super fast and free. No licensing restrictions.
8. Option to generate NHibernate or MS validators
Data Access Object Generator (c# .net) for MySQL Database
https://daogenerator.codeplex.com/
https://www.codeproject.com/Articles/6204/MyGeneration-NET-Code-Generator
https://www.codeproject.com/Articles/54784/ADO-NET-DataTable-as-XML-parameter-to-an-Oracle-SQ
https://sourceforge.net/projects/mygeneration/files/?source=navbar
The #1 .NET Development Tool on Download.com of all time.
A $199 value given away 100% free. No Adware or Spyware.
MyGeneration's dOOdads Architecture Included for Both C# and VB.NET (Quickstart)
Supported Architectures - dOOdads, EntitySpaces, EasyObjects.NET/EntLib, Gentle.NET, Opf3, NHibernate, Microsoft's DAAB, DotNetNuke, iBatis
Support for Twelve Different Database Systems. Microsoft SQL, Oracle, IBM DB2, PostgreSQL, Microsoft Access, FireBird, Interbase, VistaDB, SQLite, MySQL, Advantage and Pervasive
Template Based Code Generator Supporting Four Template Languages - JScript, VBScript, C# and VB.NET
Ability to Create Your Own Embedded User Interface in your Templates
Online Template Library for Publishing and Downloading Templates
Very Active Support Forums
No Hassle, No Questions asked Download
Watch a ultra low-res MyGeneration introductory video at the MyGeneration YouTube Page or Google Video. We host a streaming flash version of the video that is a little more readable here.
EF/EF Core
Entity Framework (EF) Core 是轻量化、可扩展、开源和跨平台版的常用 Entity Framework 数据访问技术,EF Core 是适用于 .NET 的现代对象数据库映射器。它支持 LINQ 查询、更改跟踪、更新和架构迁移。EF Core 通过提供程序插件 API 与 SQL Server、Azure SQL 数据库、SQLite、Azure Cosmos DB、MySQL、PostgreSQL 和其他数据库一起使用。(微软官方出品)。
官方文档教程:https://docs.microsoft.com/zh-cn/ef/
GitHub地址:https://github.com/dotnet/efcore
https://github.com/dotnet/ef6
Dapper
Dapper是一个简单的.NET对象映射器,在速度方面具有"King of Micro ORM"的头衔,几乎与使用原始的ADO.NET数据读取器一样快。ORM是一个对象关系映射器,它负责数据库和编程语言之间的映射。Dapper通过扩展IDbConnection提供一些有用的扩展方法去查询您的数据库。
GitHub地址:https://github.com/DapperLib/Dapper
SqlSugar
SqlSugar 是一款 老牌 .NET 开源多库架构ORM框架(EF Core单库架构),由果糖大数据科技团队 维护和更新 ,开箱即用最易上手的.NET ORM框架 。
官网地址:http://www.donet5.com
GitHub地址:https://github.com/donet5/SqlSugar
FreeSql
FreeSql 是一款功能强大的对象关系映射(O/RM)组件,支持 .NET Core 2.1+、.NET Framework 4.0+ 以及 Xamarin。
GitHub地址:https://github.com/dotnetcore/FreeSql
Chloe.ORM
Chloe.ORM 是一款国产十分稳定可靠的 ORM 框架。除了常规增删查改外还支持连接查询、分组查询、聚合查询、子查询,大部分操作可通过 lambda 完成。还支持分库分表分页、聚合、分组聚合,并支持多个字段组合分片以及多字段路由。
文档地址:https ://github.com/shuxinqin/Chloe/wiki
GitHub地址:https://github.com/shuxinqin/Chloe
nhibernate-core
NHibernate是.NET框架的成熟、开源的对象关系映射工具。它在积极开发中,功能齐全,并已成功应用于数千个项目中。
NHibernate社区网站: https://nhibernate.info
GitHub地址:https://github.com/nhibernate/nhibernate-core
SmartSql
SmartSql = C# 中的 MyBatis + .NET Core+ 缓存(内存 | Redis)+ R/W 拆分 + PropertyChangedTrack +动态存储库 + InvokeSync + 诊断。SmartSql 借鉴了 MyBatis 的思想,使用 XML 来管理 SQL ,并且提供了若干个筛选器标签来消除代码层面的各种 if/else 的判断分支。SmartSql将管理你的 SQL ,并且通过筛选标签来维护本来你在代码层面的各种条件判断,使你的代码更加优美。
文档地址: https://smartsql.net/guide/
GitHub地址:https://github.com/dotnetcore/SmartSql
PetaPoco
PetaPoco 是一个用于 .NET(4、4.5+、net standard 2.0+)和 Mono 的微型、快速、易于使用的 micro-ORM。由于 PetaPoco 所代表的简单性和易用性,它受到许多人的喜爱。PetaPoco 是首选的微 ORM,也是任何体面的开发人员工具包中必不可少的实用程序。
文档地址:https://discoverdot.net/projects/peta-poco
GitHub地址:https://github.com/CollaboratingPlatypus/PetaPoco
linq2db
LINQ to DB 是最快的LINQ数据库访问库,在POCO对象和数据库之间提供了一个简单、轻量、快速且类型安全的层。在架构上,它比 Dapper、Massive 或 PetaPoco 等微 ORM 高出一步,因为您使用 LINQ 表达式,而不是魔术字符串,同时在代码和数据库之间维护一个薄抽象层。您的查询由 C# 编译器检查并允许轻松重构。但是,它不像 LINQ to SQL 或实体框架那么重。没有更改跟踪,因此您必须自己进行管理,但从积极的方面来说,您可以获得更多控制权并更快地访问您的数据。
文档地址:https://linq2db.github.io/
GitHub地址:https://github.com/linq2db/linq2db
RepoDb
RepoDB是一个开源的.NET ORM库,它弥合了微ORM和完整ORM之间的差距。它帮助您简化在开发过程中何时使用基本操作和高级操作的切换。
GitHub地址:https://github.com/mikependon/RepoDB
ServiceStack.OrmLite
OrmLite是一个快速、简单、类型化的.NET ORM,OrmLite 的目标是提供一个方便、DRY、无配置、与 RDBMS 无关的类型包装器,该包装器与 SQL 保持高度亲和性,公开直观的 API,生成可预测的 SQL 并干净地映射到断开连接和数据传输对象 (DTO) 友好、普通的旧C# 对象 (POCO)。这种方法更容易推理您的数据访问,从而清楚地知道什么 SQL 在什么时间执行,同时减轻意外行为、隐式 N+1 查询和重对象关系映射器 (ORM) 中普遍存在的泄漏数据访问。
文档地址:https://docs.servicestack.net/ormlite/
GitHub地址:https://github.com/ServiceStack/ServiceStack.OrmLite
SQLite-net
简单、强大、跨平台的 SQLite 客户端和 .NET 的 ORM。
GitHub地址:https://github.com/praeclarum/sqlite-net
Insight.Database
Insight.Database是一个用于 .NET 的快速、轻量级的 micro-orm。
GitHub地址:https://github.com/jonwagner/Insight.Database
cyqdata
cyq.data是一个高性能且功能最强大的orm(支持.NET Core),支持Txt、Xml、Access、Sqlite、Mssql、Mysql、Oracle、Sybase、Postgres、DB2、Redis、MemCache。
GitHub地址:https://github.com/cyq1162/cyqdata
querybuilder
SQL 查询构建器,用 c# 编写,帮助您轻松构建复杂的查询,支持 SqlServer、MySql、PostgreSql、Oracle、Sqlite 和 Firebird。
官网地址:https://sqlkata.com/
GitHub地址:https://github.com/sqlkata/querybuilder
TinyORM
TinyORM是一个简单、快速且安全的微型.NET ORM。
Wiki地址:https://github.com/sdrapkin/SecurityDriven.TinyORM/wiki
GitHub地址:https://github.com/sdrapkin/SecurityDriven.TinyORM
浙公网安备 33010602011771号