SharePoint Online Access 请求状态代码



我正在使用CSOM从"访问请求"列表中检索项目。

(https://sharepointSite.sharepoint.com/sites/siteName/Access%20Requests/pendingreq.aspx)

我正在尝试找出"状态"字段的所有可能值。

我找到了以下值(仅通过查看访问请求页面并与从我的代码中检索到的数据进行比较)

  • 0 = 挂起
  • 2 = 已接受
  • 5 = 已撤回

我无法在网上找到对这些代码的任何引用。谁能指出我这些价值观的参考,或者让我知道你自己认为我们是什么?

OK,

虽然"_ModerationStatus"值为0..4(其中0=已批准),但这与访问请求的"状态"字段不同,该字段具有我从Microsoft.SharePoint.SPAccessRequestsUtility(公共枚举StatusToInt)以及accessrequestsviewtemplate.debug.js文件(位于15个配置单元,布局文件夹中)获得的值:

  • 0=待处理(邀请也可能触发过期)
  • 1=已批准
  • 2=已接受
  • 3=已拒绝
  • 4=已过期
  • 5=已吊销

我从powershell点击该领域并获得SchemaXml属性,逆向工程代码以及此MS链接中获得了这一点:https://msdn.microsoft.com/en-us/library/jj675013(v=office.12).aspx还可以根据需要查看这些链接:https://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spaccessrequests.changerequeststatus.aspxhttps://msdn.microsoft.com/en-us/library/jj674880(v=office.12).aspx

状态存储在指定Access Requests列表的Approval Status字段 ( Internal Name: _ModerationStatus ) 中

如何通过 CSOM 检索_ModerationStatus字段的值

var listTitle = "Access Requests";
var fieldName = "_ModerationStatus";
var list = ctx.Web.Lists.GetByTitle(listTitle);
var field = list.Fields.GetByInternalNameOrTitle(fieldName);
ctx.Load(field);
ctx.ExecuteQuery();
var fieldChoice = ctx.CastTo<FieldChoice>(field);
var values = fieldChoice.Choices;
foreach (var value in values)
{
     Console.WriteLine(value);
}

关于审核状态字段

根据 2.2.1.2.13 审核状态,以下是审核状态的所有可能有效值:

  • 0 - 列表项已批准。
  • 1 - 列表项被拒绝批准。
  • 2 - 列表项正在等待审批。
  • 3 - 列表项处于草稿或签出状态。
  • 4 - 列表项计划在将来的某个日期自动审批。

相关内容

最新更新