簡體   English   中英

在哪里放置生成的EF 4文件?

[英]Where to put generated EF 4 files?

我的網絡應用程序中有3個csprojs:

  • UI.Web
  • Bll.Web
  • DAL.Web

UI.Web引用Bll.Web和Bll.Web引用DAL.Web。

DAL.Web非常簡單,只包含以下方法:

GetDataTableFromSP
GetScalarFromSP
ExecuteScalarFromSP

我使用EF4反向設計了我的數據庫,並使用了自我跟蹤實體模板。 現在我留下3個文件:

  1. Model.Context.tt
  2. Model.tt
  3. Model.edmx

我的問題是,在我的項目結構中,我在哪里放這些以便保持我的n層方法?

謝謝!

這完全取決於個人喜好。

例如,我總是將這些文件和模型放在我的應用程序的DAL方面。 但我還需要訪問生成的實體,例如Student,Grade或StaffType。 所以我從BRL中引用DAL。

在UI中我需要知道生成的實體,因為通常我給表單一個實體,它填充該對象的表單字段。 所以我也從UI中引用了BRL。

我會將T4模板(以及生成的實體)放在自己的模型程序集中,並在所有層中引用。 您只需將Model.tt移動到新程序集,使用其中一個編輯器在VS中打開它,這樣您就可以看到T4代碼。 搜索Model.edmx並更新路徑,使其正確解析到包含Model.edmx的DAL.Web項目磁盤上的物理位置。

這使您能夠在架構/模型發生更改時重新運行T4模板,但通過不讓UI需要依賴DAL來保持關注點的分離。

剛剛發現以下內容有助於解釋這一點

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM