PocoClassGenerator is started with Necroskillz's POCO Generator Generate C# POCOs from SQL statement in LINQPad
Features
- Supports generating POCO class code for all current database tables and views
- Supports Dapper.Contrib
- Supports multiple RDBMS:
sqlserver, oracle, mysql, postgresql - Lightweight and fast (generates code for 100 tables in just 5 seconds)
- Uses appropriate dialect schema table SQL for each database query
DEMO
Get Started
👇First: Copy & Paste PocoClassGenerator.cs code into your project or LINQPad. or Install from NuGet
PM> install-package PocoClassGenerator👇Second: Use the connection to call GenerateAllTables and then print it.
``C#
using (var connection = Connection)
{
Console.WriteLine(connection.GenerateAllTables());
}
#### Support Dapper Contrib POCO Class
- Just call the method with GeneratorBehavior.DapperContrib
The Online Demo: POCO Dapper Contrib Class Generator GenerateAllTables | .NET Fiddle
#### Generate Comment
C#
using (var conn = GetConnection())
{
var result = conn.GenerateAllTables(GeneratorBehavior.Comment);
Console.WriteLine(result);
}
#### Generate View
C#
using (var conn = GetConnection())
{
var result = conn.GenerateAllTables(GeneratorBehavior.View);
Console.WriteLine(result);
}
#### Generate View and Comment and Dapper.Contrib
C#
using (var conn = GetConnection())
{
var result = conn.GenerateAllTables(GeneratorBehavior.View | GeneratorBehavior.Comment | GeneratorBehavior.DapperContrib);
Console.WriteLine(result);
}
#### Generate one class by SQL- Generate one class
C#
using (var connection = Connection)
{
var classCode = connection.GenerateClass("select * from Table");
Console.WriteLine(classCode);
}
- Specify class name
C#
using (var connection = Connection)
{
var classCode = connection.GenerateClass("with EMP as (select 1 ID,'WeiHan' Name,25 Age) select * from EMP", className: "EMP");
Console.WriteLine(classCode);
}
#### DataTablePocoClass
Code at DataTablePocoClassGenerator.cs
C#
var dt = new DataTable();
dt.TableName = "TestTable";
dt.Columns.Add(new DataColumn() { ColumnName = "ID", DataType = typeof(string) });var result = dt.GenerateClass();
var expect =
@"public class TestTable
{
public string ID { get; set; }
}";
Assert.Equal(expect, result);
`
``
---
Tranlated By Open Ai Tx | Last indexed: 2025-06-29
---