2010-05-20 24 views
4

我是代碼生成工具的新手,我想知道LLBGen Pro等工具如何與實體框架進行比較? 最重要的是,我的噓聲正在研究一種名爲CodeOnTime http://codeontime.com/default.aspx的工具,因爲他喜歡他們良好的用戶界面支持。幫助爲ASP.NET選擇代碼生成工具

我在這裏問,因爲我真的想要一個公正的意見。

我不確定LLBGen是否也可以生成用戶界面。到目前爲止,我們所有的開發工作都是手動編碼每層的經典方式。但是,我們需要一個快速原型工具。

任何建議,幫助我做出明智的選擇將非常感激提前

感謝。

回答

1

的事情是,有代碼生成和對象關係映射(ORM)和代碼生成那些對象關係映射。

喜歡的東西NHibernate的是純(ORM),並且不產生任何代碼,它只是提供了一個對象持久層。

LLBLGEN是一個代碼生成器生成執行ORM的功能代碼,但實際上你可以看到代碼,並可以用自定義行爲覆蓋它。 Llblgen不會爲你生成你的用戶界面,它不是爲你設計的。它主要關注數據訪問。

然後,你必須像CodeSmith中或隨Visual Studio中,你可以用它來創建模板,然後他們會產生任何你想要的,只要你寫你自己的模板內置的T4生成工具。我曾爲投入數千美元編寫自己的模板的公司工作。

最後還有像CodeOnTime或IronSpeed完整的工具,爲您生成整個應用程序。這在理論上聽起來不錯,對於小型CRUD類型的應用程序來說非常適用,但是對於像這樣的工具,您會失去很多靈活性,因爲它們通常有您需要解決的約定,一旦您開始陷入嚴重的自定義,以你的方式。

你應該問自己:

  1. 難道我只是需要一些訪問我的數據?如果是這樣,您可以使用ORM
  2. 我是否需要生成高度自定義的UI?如果是這樣,你可能是最好的避免像CodeOnTime和IronSpeed的工具
+0

謝謝你lomaxx,你的評估確實有幫助。 – Kintaro 2010-05-20 02:53:45

1

我已經使用了LLBLGen和實體框架。根據我的經驗,它們的能力大致相同,特別是現在Entity Framework 4已經發布。 NHibernate也在這個領域,應該考慮如果你想比較.NET的頂級ORM工具。

我會推薦下載LLBLGenPro演示來評估它。根據Frans Bouma's blog,LLBLGenPro提供了在VS.NET 2010內置的開箱即用框架工具中未提供的增強功能。

ORM工具(如EF和LLBLGen)不生成UI。爲此,您需要IronSpeed(不推薦,我不喜歡生成的代碼)或IdeaBlade DevForce產品,這些產品我沒有用過。

+0

謝謝戴夫。 – Kintaro 2010-05-20 02:46:47

2

你看過CodeSmith Generator嗎?這是一個帶有Visual Studio集成的基於模板的生成工具,因此根據定義,所有模板都是開源的,並且它具有高級功能,例如在構建時生成,以便隨時保持項目與數據源的最新狀態。

此外,CodeSmith的球隊即將開始的正式一套EF模板的工作,但現在他們提供幾種不同的ORM選項,包括LINQ to SQL中,NHibernate的,.netTiers,里昂證券等