SharePoint 2010:通过 EcmaScript 设置 SPWeb.RequestAccessEmail

发布于 2024-10-14 22:06:22 字数 223 浏览 8 评论 0原文

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

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

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

I have a custom ribbon button which creates a Site Group with a predefined set of permissions. This is all done using EcmaScript and so far is working 100%.

The only settings I can't seem to initialise on the new Site Group using EcmaScript are those relating to membership requests (i.e. SPWeb.RequestAccessEmail)

Does anyone know how to set this property using the client object model?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

猫腻 2024-10-21 22:06:22

我没有在 SP.Web 属性 中看到它。以下是 Reflector 中 SPWeb.RequestAccessEmail setter 的定义:

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 对象模型复制此功能。

I do not see it listed in the SP.Web Properties. Here is the definition of the SPWeb.RequestAccessEmail setter from Reflector:

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());

I don't think you will be able to duplicate this functionality using the ECMAScript object model.

白云不回头 2024-10-21 22:06:22

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

You can use PowerShell to set the SPWeb.RequestAccessEmail to an empty string, which has the same effect as setting SPWeb.RequestAccessEnabled to false.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文