1

因此,与其把我的头撞在墙上再过几个小时,我想我应该在这里仔细检查几件事。

首先,我一直在尝试通过 Visual 访问存储在 SharePoint 2007 服务器上的列表(我应该首先说这是我无法控制的,减去我是其中可以编辑列表信息的成员的事实) Windows 7 64 位计算机上的 Studio 2010(与服务器没有任何实际关联)。我说我无法控制是因为 a) 我正在编写的应用程序无法存储在服务器 comp 上,并且 b) 我无法重新配置服务器的任何部分(因为它是我无法控制的等等。 ..)

我首先使用 Web 服务从某个列表中读取列表项,该列表有效(在一定程度上)。我无法再进行任何测试,因为立即建议我停止使用该方法,而是尝试使用 SharePoint 的自己的服务(例如通过在我的项目中使用 Microsoft.Sharepoint 和相应的 .dll。)我找到了很多关于如何在网上进行此操作的教程,但我一直挂在一个部分:即 SPSite 部分。

我知道这个问题已经被提出了几十次,但我只是不能确定我到底需要控制什么才能让它发挥作用。到达这行代码后:

SPSite siteCollection = new SPSite(siteUrl);

它每次都失败。(请注意,siteUrl 是一个字符串,它指向与 Web 服务一起工作的服务器的工作 URL,所以我不明白为什么它现在不起作用。)

我已经测试了多个 .Net 框架(3.5、4.0...)并将我的架构从 x86 更改为 x64 到 Any CPU,但它仍然总是失败。现在我需要凭据才能进入这个网站,所以我假设这就是我无法访问它的原因。是否需要将某种凭据与我的程序相关联才能使其正常工作?或者它是否会要求他们成功访问该站点?

很抱歉这里的所有混乱,我的思绪刚刚因为试图如此迅速地吸收所有这些而融化。

(顺便说一句,3.5 的 .Net Framework 要求是否严格?因为这是 Microsoft Surface 应用程序,这意味着它至少需要 4.0...):P

4

2 回答 2

2

建议您使用的 SharePoint 服务器端对象模型不能用于您的方案。它仅在作为 SharePoint 场的一部分的服务器上运行时才有效(您的代码在这种情况下不会)。由于您使用的是 2007 年(无客户端对象模型),因此您被 Web 服务困住了(或将您自己的 Web 服务代码编写并部署到 SharePoint 场中的服务器,然后您的代码会调用该服务器)。

于 2012-07-19T20:47:16.400 回答
0

此代码是否与 SharePoint 网站在同一应用程序池中运行?如果没有,您最简单的选择是使用列表服务 (/_vti_bin/Lists.asmx)。SharePoint 2010 添加了客户端对象模型,但显然您被排除在外。 示例代码可以在这里找到

于 2012-07-19T20:42:56.317 回答