2013-10-23 48 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

很高兴能有帮助:) –

相关问题