我正在使用通過MSI包發佈到IIS網站的WCF服務。我所遇到的問題比任何事情都更令人煩惱,但如果可能的話,我仍然想繞過它。使用「發佈」通過MSI安裝WCF服務Visual Studio輸出
雖然我們正在創建的服務,我們的服務主機上單擊鼠標右鍵,然後選擇「發佈網站」的手段把它發佈到我們的開發服務器。當我們這樣做,下面的文件夾結構安裝:
- apsnet_client
- 斌
內bin
目錄(與DLL文件指的是服務一起),我有一個DLL文件名爲App_Code.dll
,其中包含我的Service.cs
文件的編譯版本,其中包含實際的服務代碼。
顯然,我們不能使用Visual Studio部署去到現場的環境,所以我創建了一個MSI包來安裝它。 MSI只是從我的服務主機提供內容文件,而沒有其他內容。
當MSI安裝所需的文件時,目錄結構稍有不同。它只是在網站內創建一個App_Code
目錄,並將Service.cs
文件放在該文件中,而不是存在App_Code.dll
文件。這可以工作,我可以訪問服務,但我真的不太熱衷於讓服務實例化代碼,只是爲了訪問服務器而修改任何人。
所以基本上我需要做的是將網站發佈的輸出包含在我的MSI包中,這樣我就能得到預編譯的App_Code
- 有沒有辦法做到這一點?在我的解決方案中,無法設置要編譯的文件Service.cs
,所以必須有另一種方法來完成。
謝謝。