0

我有一个自定义功能区按钮,它创建一个具有一组预定义权限的站点组。这一切都是使用EcmaScript完成的,目前 100% 有效。

我似乎无法使用 EcmaScript 在新站点组上初始化的唯一设置是与成员请求相关的设置(即SPWeb.RequestAccessEmail

有谁知道如何使用客户端对象模型设置此属性?

4

2 回答 2

1

我没有在SP.Web Properties中看到它。这是 Reflector 中 SPWeb.RequestAccessEmail 设置器的定义:

if (!this.Site.WebApplication.RequestAccessEnabled)
{
    throw new NotSupportedException(SPResource.GetString("EmailServiceNotConfigured", new object[0]));
}
if (SPWebService.ContentService.CreateActiveDirectoryAccounts)
{
    throw new NotSupportedException(SPResource.GetString("RequestAccessNotAllowedOnVirtualServer", new object[0]));
}
if (!this.HasUniqueRoleAssignments)
{
    throw new SPException(SPResource.GetString("RequestAccessUniqueWebs", new object[0]));
}
SPGlobal.FilterNullSize(value, 0xff, "RequestAccessEmail");
this.Request.SetRequestAccessInfo(this.Url, null, 0, true, value.Trim());

我认为您无法使用 ECMAScript 对象模型复制此功能。

于 2011-01-28T22:01:56.067 回答
0

您可以使用 PowerShell 将 SPWeb.RequestAccessEmail 设置为空字符串,这与将 SPWeb.RequestAccessEnabled 设置为 false 的效果相同。

于 2012-03-19T19:25:01.173 回答