随着应用程序的推出和解决方案的消失。以编程方式创建网站集的最佳方式是什么?我在现场。可以用 JavaScript 完成吗?我可以用 js 创建子站点,但是站点集合呢?
我找到了一些 C# 代码来创建网站集,但是我从哪里运行它呢?在应用程序中?
随着应用程序的推出和解决方案的消失。以编程方式创建网站集的最佳方式是什么?我在现场。可以用 JavaScript 完成吗?我可以用 js 创建子站点,但是站点集合呢?
我找到了一些 C# 代码来创建网站集,但是我从哪里运行它呢?在应用程序中?
我已经使用事件接收器 (c#) 以编程方式成功创建了网站集。Microsoft 已确认无法使用 JavaScript 创建网站集。我想我会分享我的整体解决方案,因为我没有从头到尾看到完整的文档。
添加事件接收器
这是 eventreceiver.cs 文件的代码:
using System;
using System.Security.Permissions;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Utilities;
using Microsoft.SharePoint.Workflow;
namespace SharePointProject5.EventReceiver1
{
/// <summary>
/// List Item Events
/// </summary>
public class EventReceiver1 : SPItemEventReceiver
{
/// <summary>
/// An item is being added.
/// </summary>
public override void ItemAdding(SPItemEventProperties properties)
{
base.ItemAdding(properties);
//create admin service reference
SPAdminService.Admin admService = new SPAdminService.Admin();
//grant proper admin credentials to admin service
admService.Credentials = new System.Net.NetworkCredential("Farmaccount", "Password", "Domain");
try
{
//specify new site collection path
String SitePath = "http://twv101sp13/pm/new2013";
//setup properties to create the site, see reference below for more info
admService.CreateSite(SitePath, "new site", "description", 1033, "STS#1", "bluebunny\\sp13admin", "System Account", "cslee@bluebunny.com", "", "");
}
catch (System.Web.Services.Protocols.SoapException ex)
{
//I added this section so any errors would be logged in the server application log
SPSecurity.RunWithElevatedPrivileges(
delegate()
{
System.Diagnostics.EventLog.WriteEntry("Application", "Message:\n" + ex.MRessage + "\nDetail:\n" +
ex.Detail.InnerText +
"\nStackTrace:\n" + ex.StackTrace);
});
}
}
}
}
因此,您只希望在某个列表添加项目时运行它,因此您必须修改 Elements.xml 文件。
打开 Elements.xml,将此行替换<Receivers ListTemplateId="101">
为<Receivers ListUrl="http://{SharepointSite}/{targetListName}">
- 这样我们就可以只定位该列表,而不是网站上的所有列表
右键单击您的项目并部署
您应该能够创建一个新项目,然后检查您的新网站集。
我遇到的一个问题是网站不能以数字字符开头。
在本文的底部,它讲述了如何调试功能事件接收器。没有那个我会死在水里:http: //msdn.microsoft.com/en-us/library/ee231550.aspx
这三篇文章帮助很大: