SPClaimProvider.FillResolve 方法 (Uri, String[], String, List<PickerEntity>)
派生类中实现时,通过使用类型中控制拾索赔的解决索赔。
命名空间: Microsoft.SharePoint.Administration.Claims
程序集: Microsoft.SharePoint(位于 Microsoft.SharePoint.dll 中)
语法
声明
Protected MustOverride Sub FillResolve ( _
context As Uri, _
entityTypes As String(), _
resolveInput As String, _
resolved As List(Of PickerEntity) _
)
用法
Dim context As Uri
Dim entityTypes As String()
Dim resolveInput As String
Dim resolved As List(Of PickerEntity)
Me.FillResolve(context, entityTypes, _
resolveInput, resolved)
protected abstract void FillResolve(
Uri context,
string[] entityTypes,
string resolveInput,
List<PickerEntity> resolved
)
参数
context
类型:System.Uri上下文,为 URI。这必须是格式正确的 URI。
entityTypes
类型:[]在SPProviderHierarchyTree目录树返回**[P:HYPERLINK"mk:@MSITStore:D:\\\\aSDK\\\\SP2010SDK.chm::/html/a4bf54d0-29e5-e5c2-231e-b1b9f4728a7f.htm"Microsoft.SharePoint.WebControls.PickerEntity.EntityType]**实体类型。
resolveInput
类型:System.String解决单个索赔。
resolved
类型:System.Collections.Generic.List<PickerEntity>与**[T:HYPERLINK"ms-help://MS.SPF14SDK.en/SPF14MrefAdmin/html/b09ae0ba-e07b-fdf5-9209-1743dacba588.htm"Microsoft.SharePoint.Administration.Claims.SPClaim]**填充选取实体的列表。
备注
索赔可以通过领料的理赔人员选取器控件中显示。领料的理赔人员选取器控件中使曲面的索赔应用。在领料的声明,声明提供程序提供列表、 解决、 搜索和友好显示的理赔人员选取器控件中的功能。
与领料功能的理赔人员选取器有时称为索赔选择器。如果您希望能够使用类型中控制拾索赔的解决索赔,必须实现此方法,并实现**SupportResolv()**属性返回true。
关于领料的索赔和解决方法的详细信息,请参阅如何:在 SharePoint 2013 中创建声明提供程序和SharePoint 2013 中的声明提供程序。
以下是如何实现名称解析以及实体返回人员选取器窗口的一个示例。
示例代码提供者:Andy Li,Microsoft Corporation。
示例
protected override void FillResolve(Uri context, string[] entityTypes, string resolveInput, List<PickerEntity> resolved)
{
if (resolveInput.ToUpper() == "SALESMANAGER")
{
PickerEntity entity = CreatePickerEntity();
entity.Claim = CreateClaim(CRMClaimType.Role, CRMRoleValue.SalesManager, Microsoft.IdentityModel.Claims.ClaimValueTypes.String);
entity.Description = CRMRoleValue.SalesManager;
entity.DisplayText = CRMRoleValue.SalesManager;
entity.EntityData[PeopleEditorEntityDataKeys.DisplayName] = CRMRoleValue.SalesManager;
entity.EntityType = SPClaimEntityTypes.FormsRole;
entity.IsResolved = true;
resolved.Add(entity);
}
if (resolveInput.ToUpper() == "REGIONMANAGER")
{
PickerEntity entity = CreatePickerEntity();
entity.Claim = CreateClaim(CRMClaimType.Role, CRMRoleValue.RegionManager, Microsoft.IdentityModel.Claims.ClaimValueTypes.String);
entity.Description = CRMRoleValue.RegionManager;
entity.DisplayText = CRMRoleValue.RegionManager;
entity.EntityData[PeopleEditorEntityDataKeys.DisplayName] = CRMRoleValue.RegionManager;
entity.EntityType = SPClaimEntityTypes.FormsRole;
entity.IsResolved = true;
resolved.Add(entity);
}