2009-08-02 83 views
2

我想添加基本日誌記錄,並對由SubSonic 2.1生成的類進行一些其他較小的更改(我沒有使用SubSonic 3.0 t4模板)。如何修改SubSonic 2.1代碼生成

有沒有辦法做到這一點,而無需修改SubSonic源代碼?

+0

如果您正在使用RepositoryRecord,則可以將審覈/日誌記錄添加到存儲庫基類。 [我在我的博客上展示了這個](http:// john-sheehan。COM /博客/如何,我使用的亞音速部分-3-緩存和查詢審計/)。 – 2009-08-03 05:54:11

回答

5

你有兩個選擇。您可以修改默認模板或創建自己的模板。我建議您製作自己的模板,它將與原始文件並排存放,然後通過以下說明生成代碼。

請注意,這些步驟假定您運行默認的SubSonic安裝。換句話說,Sonic.exe和默認模板可以在c:// program files /下找到。如果沒有,當然可以在另一個安裝位置找到SubSonic文件/模板。

  1. 製作在C:\ Program Files \ SubSonic \ SubSonic 2.1 Final \ src \ SubSonic \ CodeGeneration \ Templates中找到的默認模板文件夾的副本。我可能會推薦命名複製的文件夾「TemplatesWithLogging」。
  2. 在Visual Studio中打開aspx文件並修改爲您的內容。例如,我想要一個備用的C#類模板,因此我修改了CS_ClassTemplate.aspx。如果您只想改變默認的模板,你可以但我建議先做一個備份
  3. 我打算假設你已經熟悉SubSonic的代碼生成我個人喜歡設置一個Visual Studio外部工具來允許快速,否則,可以將以下內容移植到命令行:以下是外部工具設置說明:

    • 工具>外部工具>添加標題:TemplatesWithLogging

    • 亞音速類命令:C:\ Program Files文件\亞音速\亞音速2.1最後\ SubCommander \ sonic.exe參數:生成輸入/輸出生成/命名空間NAMESPACE /服務器SERVER/db DATABASE其中NAMESPACE,SERVER和DATABASE被相應地替換。

    • 初始目錄:$(PROJECTDIR)

    • 勾選「使用輸出窗口」和

    • 選擇應用或確定

4「提示的論點。」 。選擇包含「生成」文件夾和自動生成文件的項目。選擇工具> TemplatesWithLogging。

您可以find more here

1

是的,你可以修改版本2使用的模板,它們只是aspx文件。模板存儲在安裝目錄下的src \ SubSonic \ CodeGeneration \ Templates中。

本博客文章進入更多細節:

http://johnnycoder.com/blog/2008/06/09/custom-templates-with-subsonic/

+0

@亞當 - 你打敗了我!我應該總結和鏈接到我的博客,而不是重新格式化SO的答案。請參閱下面的答案。 :) 做得好。 – 2009-08-02 17:16:05