2013-10-23 86 views
2

我正在開發將文檔上載到SharePoint文件夾的應用程序。由於我的應用程序不會在服務器環境中運行,而是在客戶端計算機上運行,​​因此我決定使用Sharepoint提供的Web服務上載文檔(my sharepoint address + _vti_bin/copy.asmx)並檢查上載的文件(my sharepoint address + /_vti_bin/Lists.asmx)。如何在Visual Studio中爲生產環境配置Web引用

我的問題是與my sharepoint address部分。我用於開發的Sharepoint當然不同於客戶使用的Sharepoint。由於我必須在開發時爲服務添加Web引用以便在C#代碼中使用它,因此我應該如何處理?

我必須獲得至少獲得sharepoint地址的主要部分 - 說https://sharepoint/projects/ProjectX/並聲明我的WS?

如果它不同,我使用WiX最後部署我的應用程序,生成一個.msi可執行文件。我的分享點是2010年,我正在使用.NET 4.0在VS2010中編寫我的應用程序。

謝謝你提前

回答

1

這就是正確的佩德羅。

您應該將my sharepoint address指向網站的網址,而不是根網站集,但您希望訪問該網站的網站。

你有那麼2個選項,你可以更改的Visual Studio代理生成作爲構建腳本的一部分的配置文件上的地址(抱歉不知道維克斯,但我敢打賭,這是可以做到)

或者你可以在運行時設置url,它會忽略Visual Studio生成的配置文件中的一個:

WSS.Lists svc = new WSS.Lists(); 
svc.Url = my sharepoint address + "/_vti_bin/Lists.asmx" 
+0

好!第二種選擇看起來很有希望。我會試試看,並返回結果。 –

+0

它真的工作至今,非常感謝! –

1

Luis的回答非常正確。另一種方法是使用wsdl.exe創建代理類。這會創建一個您可以在您的項目中使用的類實例。獲得文件後,您只需更新變量的網址的值,以便它與您的sharepoint URL匹配。

您還可以更新構造象下面這樣:

public Lists(string SERVER) 
{ 
    this.Url = "http://" + SERVER + "/_vti_bin/Lists.asmx"; 
} 

這可以確保你可以使用任何你想要的SharePoint站點或將其放置在配置文件中了。

+0

在這兩種情況下,我是否必須在解決方案中設置Web服務引用或像您所描述的那樣處理服務器就足夠了? –

+0

Humm,*它會忽略由Visual Studio生成的配置文件中的一個*我想我的問題是答案! –

+0

很高興能有幫助:) –

相關問題