PocoClassGenerator با الهام از POCO Generator اثر Necroskillz آغاز شده است. تولید کلاسهای POCO سیشارپ از دستورات SQL در LINQPad
ویژگیها
- پشتیبانی از تولید کد کلاس POCO برای تمام جداول و نماهای پایگاه داده فعلی
- پشتیبانی از Dapper.Contrib
- پشتیبانی از چندین RDBMS :
sqlserver,oracle,mysql,postgresql - کوچک و سریع (در کمتر از ۵ ثانیه تولید کد برای ۱۰۰ جدول)
- استفاده از پرسوجوی SQL مناسب هر پایگاه داده برای دریافت اسکیمای جداول
دمــو
- تولید کلاس برای همه جداول با POCO Class Generator | .NET Fiddle
- تولید کلاس POCO از DataTable | .NET Fiddle
شروع کار
👇ابتدا : کد PocoClassGenerator.cs را کپی و در پروژه یا LINQPad خود قرار دهید. یا از NuGet نصب کنید.
PM> install-package PocoClassGenerator👇سپس : با استفاده از Connection، متد GenerateAllTables را فراخوانی و چاپ کنید.
``C#
using (var connection = Connection)
{
Console.WriteLine(connection.GenerateAllTables());
}
#### پشتیبانی از کلاس POCO برای Dapper Contrib
- کافیست متد را با GeneratorBehavior.DapperContrib
فراخوانی کنید
دموی آنلاین : تولید کلاس POCO Dapper Contrib با GenerateAllTables | .NET Fiddle
#### تولید توضیحات (Comment)
C#
using (var conn = GetConnection())
{
var result = conn.GenerateAllTables(GeneratorBehavior.Comment);
Console.WriteLine(result);
}
#### تولید View
C#
using (var conn = GetConnection())
{
var result = conn.GenerateAllTables(GeneratorBehavior.View);
Console.WriteLine(result);
}
#### تولید View و Comment و Dapper.Contrib
C#
using (var conn = GetConnection())
{
var result = conn.GenerateAllTables(GeneratorBehavior.View | GeneratorBehavior.Comment | GeneratorBehavior.DapperContrib);
Console.WriteLine(result);
}
#### تولید یک کلاس با SQL- تولید یک کلاس
C#
using (var connection = Connection)
{
var classCode = connection.GenerateClass("select * from Table");
Console.WriteLine(classCode);
}
- تعیین نام کلاس
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
کد در 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 ---