2013-03-21 47 views
3

我在VS2010中開發了一個wcf Web服務。該Web服務在VS2010中運行良好,在同一個解決方案中將Web服務引用添加到項目(winform)中,一切正常,方法調用良好。(網站)的網頁可能暫時關閉,或者它可能已永久移動到新的網址

當我部署我的web服務,我得到:

The webpage at (website) might be temporarily down or it may have moved permanently to a new web address. 

我是新來的WCF Web服務,需要什麼部署,使其正常工作?

我部署了.svc文件和web.config。 我在bin目錄中部署了所有.dll文件。

我檢查我的項目文件夾,有一個Web.config,Web.Release.config和Web.Debug.config。

我需要部署Web.Release.config嗎?但沒有太多的內容在裏面:

<?xml version="1.0"?> 

<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 --> 

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 

    <system.web> 
     <compilation xdt:Transform="RemoveAttributes(debug)" /> 
    </system.web> 

</configuration> 

在我的web.config我有AppSettings的,綁定,服務和所有的一切,我需要複製所有的東西在我的Web.Release.config文件?

任何解決方案/建議?

謝謝。

+0

這看起來不像是WCF的問題,而是IIS的問題。另外,聽起來像當你說'部署'時,你的意思是將構建輸出結果複製到目標目錄。您最好使用項目右鍵菜單中的「發佈」。您是否熟悉如何配置IIS? – 2013-03-21 17:56:44

+0

@MikeGuthrie不多,我看了WCF需要安裝在IIS服務器上,可能是這個問題? – 2013-03-21 17:57:52

+0

正確。您將需要設置IIS應用程序,目錄,應用程序池等,然後將發佈的代碼放入該應用程序指向的文件夾中。您使用什麼Windows版本來託管?我會嘗試獲得一些相關的屏幕截圖。 – 2013-03-21 18:00:46

回答

3

要託管您的WCF項目(或任何在IIS中的事情),這將是值得一讀Hosting in Internet Information Services。您可以按照WCF Service Publishing的指示部署您的項目。

有關示例解決方案,讓我們假設您使用的是IIS 7的計算機。打開管理員工具下的Internet信息服務(IIS)管理器。

首先我們將選擇或創建一個應用程序池供我們的應用程序使用。只要它使用相同的.NET版本,它就可以使用現有的應用程序池,或者可以創建一個新的應用程序池。你可能有類似的東西:

IIS_AppPool

接下來,你會選擇一個網站託管WCF服務。您可以使用現有網站或創建新網站。我將只使用默認Web站點,並添加應用程序...

IIS_AddApplication

這種物理路徑將是你部署WCF項目。假設您的主機名爲MyHostMachine。要部署WCF,請右鍵單擊項目,選擇發佈... 在該彈出窗口中,選擇發佈Web Deploy方法,設置服務URL(例如:http://MyHostMachine)和網站/應用程序(例如:Default Web Site/MyWcfService)。

注意:如果您有任何阻止您執行Web部署的權限問題,那麼您可以簡單地部署到本地文件系統中的某個位置,並將完整內容從那裏複製到主機上的應用程序目錄。

+0

感謝您的信息。 – 2013-03-21 19:03:08

+0

很高興我能幫到你。我會再次提出一個建議@ ThePig'sEar,你可以嘗試使用WCF項目右鍵菜單下的Use IIS Express ...選項(可在VS2010 SP1中使用或作爲單獨的附加組件)。 IIS Express應該比Visual Studio的內置WebDev服務器更接近於2012 IIS環境。 – 2013-03-21 19:11:50

相關問題