2010-09-02 66 views
6

我搜索並找不到與此主題相關的任何內容。將Visual Studio 2010用於WCF庫時,可以右鍵單擊它併發布WCF庫,該庫生成/創建.svc和web.config文件並進行部署。我一直試圖在msbuild中模仿這個,並沒有成功。這可能嗎?我有構建腳本來部署WCF應用程序,網站,並沒有運氣使用這些腳本來成功部署WCF庫。當我使用它們時,它會編譯Dll,但不會編譯.svc或web.config文件。任何建議將不勝感激。使用MSBuild自動發佈WCF庫

+1

感謝您的答覆。除非使用和/或編寫了自定義任務,否則我一直在向MSBuild推進。 – BlueFalcon 2010-09-03 14:34:23

回答

0

發佈WCF庫是建立在與MSBuild無關的Visual Studio功能中的。所以除非你創建自己的MSBuild任務或者使用其他任務模擬行爲,否則你將無法做到這一點。

+0

查看/ t:至少包含.NET 4.0的包目標 - 我相信這更像是Visual Studio利用的功能,而不是任何烘焙到VS中的功能(但我可能是錯的)。你會在VS2010中獲得一些不錯的屬性對話框,否則這些對話框必須進行手工編輯。 – 2010-12-23 22:18:55

0

你應該檢查出Wix我相信它應該能夠做你所要求的,這只是一個巨大的學習曲線。

0

閱讀Vishal Joshi's blog,他有圍繞用於部署IIS應用程序(包括託管在IIS中的WCF服務)的技術的幾篇好文章。

Web Packaging: Creating Web Packages using MSBuild

簡而言之,該MSBuild的目標是你的朋友。嘗試在命令行上使用/t:Package目標構建ASP.NET或WCF服務應用程序。

它將創建一個zip文件和相關的.cmd文件來執行,然後您可以使用命令行進行部署,甚至可以通過MMC將.zip手動導入IIS。要從MSBuild進行部署,您應該能夠對運行Web Deploy服務的任何服務器執行該「包」。

如果您希望單獨存儲您的應用程序元數據(sitename,apppools,acls,目標目錄等),然後編寫一個MSBuild(或Powershell),您還可以查看%WINDIR%\ system32 \ inetsrv \ appcmd.exe ,bat文件等)腳本來協調建立和拆除這些資產的工作。有關更多信息,請參閱Getting Started with AppCmd.exe

HTH,

ž