【发布时间】:2017-08-19 22:50:30
【问题描述】:
我正在创建一个 mini-ORM 来更好地学习 C# 中的反射。
我也想使用 Native & Pure C#,不使用实体框架或SQL Server Management Objects。
public static void CreateTable(Type tableType, string connectionString)
{
// codes to create table in database
}
问题在于CreateTable方法,其中有很多问题,例如:
我找不到从用户定义类创建表的任何标准方法。 How can I generate database tables from C# classes?:这个解决方案很好但并不理想。也许它在某些情况下会崩溃。
数据类型!
C# 和 SQL Server 数据类型之间没有集成。例如varchar、nvarchar和text都是(或映射到)string!
所以当用户创建这个类时:
public class Person
{
public int ID { get; set; }
public string Name { get; set; }
}
我应该为Name 使用哪种 SQL Server 数据类型?
最后,如果生成 SQL 查询并执行它是解决这个问题的最佳方法,您的建议是什么?
【问题讨论】:
标签: c# sql sql-server orm ado.net