我无法找到SPSite
到目前为止我已导入这些内容:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using Microsoft.SharePoint;
using System.Collections;
using Microsoft.SharePoint.Client;
using Microsoft.SharePoint;
using System.Data.SqlClient;
using SP = Microsoft.SharePoint.Client;
using System.Data;
namespace GrandPermission
{
class Program
{
static void Main(string[] args)
{
SPSite oSPSite = new SPSite("http://spdevserver:1002/");
}
}
}
SPSite
下面还有红线。
答案 0 :(得分:9)
发生此错误,因为SPSite class是服务器侧对象模型API的一部分:
服务器端对象模型 API可以在安装了SharePoint Server / Foundation的计算机上 使用。
由于您使用的是客户端对象模型API (项目Microsoft.SharePoint.Client.dll
中引用的程序集是SharePoint Server 2013 Client Components SDK的一部分),我建议您使用此API。
所以,行:
SPSite oSPSite = new SPSite("http://spdevserver:1002/"); //SSOM
可以替换为:
using(var ctx = new ClientContext("http://spdevserver:1002/"))
{
var site = ctx.Site;
//...
}
答案 1 :(得分:1)
根据您的屏幕截图,您在项目的参考中缺少对Microsoft.SharePoint的引用。您只能引用客户端DLL。
如果您没有找到它,请确保您要么在SharePoint服务器上进行开发,即安装了SharePoint,要么在您的计算机上拥有该dll的副本。我见过有人将SharePoint dll从SharePoint服务器复制到本地非SharePoint开发机器的论坛帖子。但是,我从来没有这样做过。我总是在开发服务器上安装SharePoint并从中运行Visual Studio。
答案 2 :(得分:1)
您需要将程序集Microsoft.SharePoint.dll
添加到引用中才能使用它。您可以在与之合作的SharePoint服务器上找到此DLL:
在SharePoint 2013
,它住在:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\ISAPI
在SharePoint 2010
上可以找到:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\ISAPI