[英]Database First + EF + POCO; T4 Code Generation?
我正在使用數據庫第一種方法,使用實體框架,我剛剛閱讀了有關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
,每個表都包含它的字段,屬性getter和creation。 POCO
實體,最好是在另一個項目中,所有屬性映射包括關系,標記為虛擬的屬性以啟用代理,顯然在我選擇的命名空間中。 有沒有一種“簡單”的方法來使用T4模板來實現這一點,還是有其他工具可以做到這一點? 也許某種Custom Tool
而不是EF附帶的Custom Tool
,但這是POCO
導向的?
只要您使用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(你可以做到並完美地連接到數據庫?),但你可能能夠將生成項目彎曲到你的心血來潮。 不過,這應該是朝着正確的方向發展
創建POCO實體,最好是在另一個項目中,所有屬性映射包括關系,標記為虛擬的屬性以啟用代理,顯然在我選擇的命名空間中。
實體框架默認模板不能放在單獨的程序集中,因為它需要配置和EDMX文件。
有沒有一種“簡單”的方法來使用T4模板來實現這一點,還是有其他工具可以做到這一點?
是的,實體接口生成器
https://entityinterfacegenerator.codeplex.com
該項目包含自定義的T4模板,可以為DbContext類和實體類生成接口和屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.