当前位置: 首页 > 编程语言 > C#

从数据库表生成实体类分享

时间:2023-04-10 21:11:09 C#

从数据库表生成实体类我需要建立一个类命名空间BestCompanyEver{publicclassPersonInfo{publicstringName{get;set;}publicintAge{get;set;}}}来自具有列名和年龄的表。有现成的解决方案吗?我知道我可以用T4或Codesmith实现这一点,但应该有人已经做到了。我找到了一些我可以使用的不错的T4模板。它来自codeplex上的一个项目。LINQtoSQLTemplatesforT4这些模板很难阅读,我花了一些时间来简化它。在使用它之前,您必须从您的项目中下载包含文件(CSharpDataClasses.tt)。这是我的模板():!String.IsNullOrEmpty(s));data.EntityNamespace=(newstring[]{manager.GetCustomToolNamespace(data.DbmlFileName),data.SpecifiedEntityNamespace,manager.DefaultProjectNamespace}).FirstOrDefault(s=>!String.IsNullOrEmpty(s));manager.StartHeader();manager.EndHeader();vartableOperations=newList();foreach(vartableindata.Tables)tableOperations.AddRange(table.Operations);foreach(数据表中的表表)foreach(Enum.GetValues(typeof(OperationType))中的OperationTypeoperationType)如果(!tableOperations.Any(o=>(o.Table==table)&&(o.Type==operationType))){}if(!String.IsNullOrEmpty(data.ContextNamespace)){}foreach(data.Tables中的表表){foreach(table.Classes中的TableClassclass1){manager.StartBlock(Path.ChangeExtension(class1.Name)+"信息",".cs"));如果(!String.IsNullOrEmpty(data.EntityNamespace)){#>使用系统;使用System.Collections.Generic;使用System.Linq;使用系统文本;命名空间{类信息{0){#>private=default();{得到{返回;}set{=value;}}}}实体框架呢?或LINQtoSQL,或LLBLGenPro,或Subsonic,或NHibernate……以上就是C#学习教程:从数据库表生成实体类。请注意——本文摘自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如有转载请注明出处: