Dynamics crm Power App自定义连接器:无法调用CRM函数RetrieveRolePrivilegesRole
自定义连接器的我的swagger JSON如下所示:Dynamics crm Power App自定义连接器:无法调用CRM函数RetrieveRolePrivilegesRole,dynamics-crm,powerapps,Dynamics Crm,Powerapps,自定义连接器的我的swagger JSON如下所示: "/roles({roleid})/Microsoft.Dynamics.CRM.RetrieveRolePrivilegesRole": { "post": { "responses": { "200": { "description": "Success Operation" } }, "parameters": [
"/roles({roleid})/Microsoft.Dynamics.CRM.RetrieveRolePrivilegesRole": {
"post": {
"responses": {
"200": {
"description": "Success Operation"
}
},
"parameters": [
{
"name": "roleid",
"in": "path",
"type": "string",
"required": true
}
],
"operationId": "_POST_RetrieveRolePrivilegesRole",
"description": "Retrieve Role Privileges",
"summary": "Retrieve Role Privileges"
}
},
当我使用此命令创建自定义连接器并测试调用时,出现以下错误:
{
"error": {
"code": "0x0",
"message": "Resource not found for the segment 'Microsoft.Dynamics.CRM.RetrieveRolePrivilegesRole'",
"innererror": {
"message": "Resource not found for the segment 'Microsoft.Dynamics.CRM.RetrieveRolePrivilegesRole'",
"type": "Microsoft.Crm.CrmHttpException",
"stacktrace": " at Microsoft.Crm.Extensibility.ODataV4.Routing.CrmODataRoutingConvention.ThrowUnresolvedSegmentException(ODataPath odataPath)\r\n at Microsoft.Crm.Extensibility.ODataV4.Routing.CrmODataRoutingConvention.SelectActionImplementation(ODataPath odataPath, HttpControllerContext controllerContext, ILookup`2 actionMap)\r\n at Microsoft.PowerApps.CoreFramework.ActivityLoggerExtensions.Execute[TResult](ILogger logger, EventId eventId, ActivityType activityType, Func`1 func, IEnumerable`1 additionalCustomProperties)\r\n at Microsoft.Xrm.Telemetry.XrmTelemetryExtensions.Execute[TResult](ILogger logger, XrmTelemetryActivityType activityType, Func`1 func)\r\n at System.Web.OData.Routing.ODataActionSelector.SelectAction(HttpControllerContext controllerContext)\r\n at System.Web.Http.ApiController.ExecuteAsync(HttpControllerContext controllerContext, CancellationToken cancellationToken)\r\n at System.Web.Http.Dispatcher.HttpControllerDispatcher.<SendAsync>d__1.MoveNext()"
}
}
}
{
“错误”:{
“代码”:“0x0”,
“消息”:“未找到段“Microsoft.Dynamics.CRM.RetrieveRolePrivilegesRole”的资源”,
“内部错误”:{
“消息”:“未找到段“Microsoft.Dynamics.CRM.RetrieveRolePrivilegesRole”的资源”,
“类型”:“Microsoft.Crm.CRMHTTPEException”,
“stacktrace”:“位于Microsoft.Crm.Extensibility.ODataV4.Routing.CrmODataRoutingConvention.ThrowUnresolvedSegmentException(ODataPath ODataPath)\r\n位于Microsoft.Crm.Extensibility.ODataV4.Routing.CrmODataRoutingConvention.SelectActionImplementation(ODataPath ODataPath controllerContext controllerContext,ILookup`2 actionMap)\r\n在Microsoft.PowerApps.CoreFramework.ActivityLoggerExtensions.Execute[TResult](ILogger logger,EventId EventId,ActivityType ActivityType,Func`1 Func,IEnumerable`1 additionalCustomProperties)\r\n在Microsoft.Xrm.Telemetry.XrmTelemetryExtensions.Execute[TResult](ILogger,XrmTelemetryActivityType ActivityType,Func`1 Func)\r\n位于System.Web.OData.Routing.ODataActionSelector.SelectAction(HttpControllerContext controllerContext)\r\n位于System.Web.Http.ApiController.ExecuteAsync(HttpControllerContext controllerContext,CancellationToken CancellationToken)\r\n位于System.Web.Http.Dispatcher.HttpControllerDispatcher.d\u 1.MoveNext()
}
}
}
我认为这意味着role\u id变量不是RolePrivilegesRole实体的有效GUID。要获取有效GUID的列表,您可以从RolePrivileges实体检索它们:@Jon看起来RetrieveRolePrivilegesRole是一个未绑定的操作。因此,我们必须直接调用它,而不附加任何实体路径。谢谢你的回复。嘿,很高兴你能理解。为了我自己的利益,我很想看到完整的解决方案。你应该回答你自己的问题来展示它是如何工作的!