2011-03-21 64 views
6

我正在嘗試爲使用SandCastle的WCF服務生成外部文檔。我如何告訴SandCastle使用WCF屬性(如ServiceContract)來命名函數和實體,而不是它們在程序集中的名稱?使用SandCastle生成WCF文檔

回答

1

好的,以下內容不會直接回答您的問題,但也許會有所幫助。

如果你說你想創建「外部服務文檔」,那麼外部文檔可能並不是真的適用於.NET開發人員,你甚至可能不希望實現細節(必然)可見。因此,典型的API風格文檔可能不適合。

在該API風格文檔旁邊Sandcastle還支持所謂的「概念文檔」。這基本上是「自由文本」,當然在某種XML方言中。我會在稍後回來。你可以先爲你的服務接口生成一個WSDL文件(通常在你的服務組件上附加?WSDL到服務的URI或者在你的服務組件上使用SVCUTIL.EXE,這在自動生成時更適合)。

然後來了難的部分。您需要創建一些將WSDL轉換爲MAML文檔(想到XML樣式表)。 MAML(微軟協助標記語言)實際上就是Sandcastle所使用的核心格式。

我認爲你最好的選擇是使用Sandcastle Helpfile Builder創建項目,創建一個CHM,HTML頁面或任何它。

基本上,一旦你有了MAML文檔,你就回到了「標準」Sandcastle工具鏈。

我知道這聽起來像一些工作,可能是這樣。過去我曾做過類似的事情,我將使用SMO查詢SQL Server數據庫以生成MAML文檔以供表,程序等生成參考文檔。事實上,它的結果非常好,最後努力也不錯。

不管怎樣,我會繼續這個問題的情況下,盯着那裏確實存在一個「現成」的解決方案:-)

+4

我最後寫一些「現成」的軟件自己生成的文件出來的DLL和代碼中的XMLDoc評論。我會諮詢我的僱主,看看我能不能GitHub。 – 2011-08-31 10:51:03

+2

您是否擁有發佈代碼生成代碼的權限? – 2012-03-27 12:35:40

相關問題