我正在使用数据库第一种方法,使用实体框架,我刚刚阅读了有关POCO
In EF的文章。现在:如何直接从数据库生成POCO模板?
namespace My.Domain
{
public class Entity
{
public virtual long EntityId { get; set; }
public virtual string Example { get; set; }
public virtual long NextId { get; set; }
public virtual bool Lame { get; set; }
}
}
事实上,我非常希望能够生成我手动生成的相同内容,只需一步:
ObjectSet
添加到ObjectContext
,每个表都带有字段,属性获取和创建。POCO
实体,最好是在另一个项目中,所有属性映射包括关系,标记为虚拟的属性以启用代理,显然在我选择的命名空间中。使用T4模板是否有“简单”的方法来实现这一目标,还是有其他工具可以做到这一点?也许某种Custom Tool
而不是EF附带的那种,但那是POCO
面向的?
答案 0 :(得分:2)
只要您使用的是EF 4.1,那么生成的POCO对象就是“内置”的。请参阅这篇文章:
http://blogs.msdn.com/b/adonet/archive/2011/03/15/ef-4-1-model-amp-database-first-walkthrough.aspx
,这只是回归到
中发现的更古老,更冗长的方式第一种方法现在更多的是建议的方法,但我想我还会给你更旧的方法:)
希望这符合您的需求:)。我不确定在指定的命名空间和项目中创建它。这听起来更像Code First(你可以做到并完美地连接到数据库?),但你可能能够将生成项目弯曲到你的心血来潮。这应该是朝着正确的方向发展,不过
答案 1 :(得分:0)
创建POCO实体,最好是在另一个项目中,所有属性映射包括关系,标记为虚拟的属性以启用代理,显然在我选择的命名空间中。
实体框架默认模板不能放在单独的程序集中,因为它需要配置和EDMX文件。
是否有简单的"使用T4模板完成此任务的方法,还是有其他工具可以做到这一点?
是,实体接口生成器
https://entityinterfacegenerator.codeplex.com
该项目包含自定义的T4模板,可以为DbContext类和实体类生成接口和属性。