如何在Visual Studio中为生产环境配置Web引用

本文关键字:生产环境 配置 Web 引用 Visual Studio | 更新日期: 2023-09-27 18:36:41

我正在开发一个应用程序,它将文档上传到sharepoint文件夹。由于我的应用程序不会在服务器环境中运行,而是在客户端计算机上运行,因此我决定使用 SharePoint 提供的 Web 服务来上载文档 (my sharepoint address + _vti_bin/copy.asmx) 并签入上载的文件 ( my sharepoint address +/_vti_bin/Lists.asmx)。

我的问题出在my sharepoint address部分。我用于开发的 SharePoint 当然与客户使用的 SharePoint 不同。由于我必须在开发时为服务添加 Web 引用才能在 C# 代码中使用它,因此我应该如何处理?

我必须至少获得共享点地址的主要部分 - 比如说https://sharepoint/projects/ProjectX/并用它声明我的 WS?

如果它有所不同,我最终将使用WiX部署我的应用程序,生成.msi可执行文件。我的 sharepoint 是 2010,我正在使用 .NET 4.0 在 VS2010 中编写我的应用程序。

提前谢谢你

如何在Visual Studio中为生产环境配置Web引用

这是正确的佩德罗。

my sharepoint address应指向网站的 URL,而不是根网站集,而是要访问服务的网站。

然后你有 2 个选项,您可以更改 Visual Studio 代理作为构建脚本的一部分生成的配置文件上的地址(抱歉不知道 Wix,但我敢打赌可以做到)

或者你可以在运行时设置 url,它将忽略 Visual Studio 生成的配置文件中的 url:

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

路易斯的回答几乎是正确的。您可以做的另一种方法是使用 wsdl.exe 创建代理类。这将创建一个可在项目中使用的类实例。获得文件后,只需更新变量 URL 的值,使其与共享点 URL 匹配。

您还可以更新构造函数,如下所示:

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

这可确保您可以使用所需的任何 SharePoint 网站或将其放置在配置文件中。