2010-10-09 47 views
0

我有一個Silverlight應用程序,我想訪問Azure存儲。我的解決方案中有兩個項目:一個SL項目和一個ASP Web角色。Visual Studio:在解決方案的不同項目中將服務引用添加到服務中?

網絡角色有一項服務。當我啓動該項目時,我會去服務,並且它工作正常。 (我可以下載數據。)

我不完全確定我可以通過「添加服務參考」來做什麼,但我懷疑這可能是我應該在這裏做的,以利用WCF的全部力量。我打開對話框,然後點擊「發現」在我的解決方案中查找服務。 Visual Studio找到我的服務,但是當我點擊「Go」時,它會失敗並出現404錯誤。這並不奇怪,因爲我的ASP本地主機服務器目前還沒有啓動。

看起來我應該可以在devserver運行時添加服務引用,但Visual Studio的菜單項是灰顯的。

我應該在這裏做什麼?我完全困惑什麼服務參考?我應該只使用WebClient,對URI進行硬編碼,並將XML自動反序列化爲對象?

回答

0

我認爲使用WebClient可能是矯枉過正。我不會重新實現簡單來解決Visual Studio可用性問題(即使它是誘人的)。

嘗試單獨打開項目。我的意思是打開兩個Visual Studios,一個使用Web服務,另一個使用Silverlight應用程序。運行Web服務(以便您可以在瀏覽器中使用它),然後直接在其他Visual Studio中以調試模式運行的服務的URL創建服務引用。

創建服務引用並創建所有代理後,除非更改服務的接口,否則不需要再次執行此操作。

2

詹姆斯的答案將起作用。但是,如果同時使用同一解決方案中的服務項目和消費者項目,則更容易的選項是使用「添加服務引用」對話框中「前往」按鈕右側的「發現」按鈕。如果你點擊小箭頭,你會看到它說「解決方案中的服務」。然後這將使VS搜索解決方案以獲得您已經實施的任何有效服務,因此您無需在當時運行該服務。

另一種選擇是在IIS本地運行服務。

+0

我們嘗試過,但我們的WPF應用程序是主機,客戶端項目不會「發現」任何東西。顯然是因爲我們通過編程的方式來完成所有的配置,而不是使用配置文件。 – 2012-01-25 22:22:08

相關問題