2010-09-05 87 views
0

喜歡,你可以像生成Entitities在單獨的文件夾

http://i51.tinypic.com/xoe14j.jpg

我與VDB.Data類庫的文件夾服務器上看到。在那個類庫裏我有我的VDB edmx。但我想在我的其他文件夾中生成我的實體。他們必須拿出在公共文件夾下的VDB.Common.Model - >實體 - >生成

在EDMX是客戶,訂單,訂單明細 然後必須將生成的文件下與下面的一個VDBEntities.tt以下實體 客戶,訂單,訂單細節

但是我該怎麼做?我只能在VDB.Data Library 下做任何人可以幫助我嗎?

+0

您是否嘗試過移動生成的.edmx文件? – svick 2010-09-05 17:04:17

+0

這不是在其他文件夾,而是實體需要的edmx。但是,這是一個大文件,我想單獨的文件中的實體 – Sven 2010-09-05 17:37:57

回答

1

你不能也不想把實體放在單獨的文件中。你不應該修改生成的文件。

所有實體都按框架實現爲partial類。這意味着您可以將代碼擴展到單獨的文件中。

例如,如果你想計算屬性添加到Customer類,創建一個Customer.cs文件您選擇的文件夾中,並與partial關鍵字聲明它:

public partial class Customer 
{ 
    public int CalculatedTotalOrders 
    { 
     get { return this.Orders.Sum(o => o.Total); } 
    } 
} 

雖然您只在此文件中聲明瞭一個屬性,但您可以訪問該類的任何屬性;該聲明只是分割爲多個文件 - 在這種情況下,一個生成的文件(您不會觸及)和一個文件。

+0

我已經看到了一些代碼,實體位於單獨的文件夾和單獨的文件中。在生成的Entitites下有一個Entities.tt和Entities.tt。和一個地圖實體/一般與所有部分類,就像你說的。但我不知道他們是怎麼做到的。 – Sven 2010-09-06 05:10:49

+0

@SvenVdb你確定他們只是使用實體框架,而不是自定義的T4模板? .tt文件是T4模板。 – Jay 2010-09-06 12:09:44

+0

這可能是他們使用T4模板。我不知道。這就是我在這裏問的原因。 :)你知道T4模板的工作原理嗎?我如何設置它。 – Sven 2010-09-06 17:06:23

相關問題