Sharepoint对象模型applicaton无法在WSS服务器外部运行
问题描述:
我在Windows Server 2003上使用Microsoft.SharePoint对象模型VS WSS扩展创建C#控制台应用程序。该应用程序应该遍历WSS3.0站点以查找所有可用列表。它在服务器上运行得很好。但是,如果我尝试从网络上的另一台计算机上运行的exe文件,应用程序崩溃,立即上的SPSite siteCollection =新的SPSite(” http://devsharepoint); 即使不执行我的try和catch不利于作为捕捉Sharepoint对象模型applicaton无法在WSS服务器外部运行
是不是打算只在安装了VS的SharePoint扩展的机器上运行SharePoint对象模型的应用程序
下面是代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.SharePoint;
namespace ConsoleApplicationWSSobjectModel
{
class Program
{
static void Main(string[] args)
{
string url = "http://sharepoint";
Console.WriteLine("Trying to access: " + url);
try
{
SPSite siteCollection = new SPSite(url);//"http://Server_Name");
SPWebCollection sites = siteCollection.AllWebs;
foreach (SPWeb site in sites)
{
SPListCollection lists = site.Lists;
Console.WriteLine("Site: " + site.Name + " Lists: " + lists.Count.ToString());
}
Console.WriteLine("Press ENTER to continue");
Console.ReadLine();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
}
答
不能使用“外的SharePoint的” SP对象模型,你将不得不使用网络服务(或者如果你使用SharePoint 2010的话n使用新的客户端对象模型)
答
您可以使用客户端对象模型使用C#或VB作为您的语言。添加引用Microsoft.sharepoint.client.dll和Microsoft.sharepoint.client.Runtime.dll它可以在14(SP2010)或15(SP2013)配置单元ISAPI文件夹中找到。
请勿使用'Console.WriteLine(ex.Message)'。使用'Console.WriteLine(ex.ToString())' – 2010-02-24 01:35:08
你是对的,约翰,我的坏。 Val – val 2010-02-24 17:55:17
Erm - 如果您只想要消息,请使用.Message;如果您希望包括堆栈跟踪在内的所有内容都使用.ToString()。大多数时候你做,但不总是。 – Ryan 2010-02-24 19:32:56