目前我们有一个Silverlight应用程序可以在浏览器中运行,有些时候Silverlight应用程序无法通过RIA服务连接到服务器,如果我在服务器上记录错误,我会得到以下错误:
Access to operation 'XXXX' was denied.:
at System.ServiceModel.DomainServices.Server.DomainService.ValidateMethodPermissions(DomainOperationEntry domainOperationEntry, Object entity)
at System.ServiceModel.DomainServices.Server.DomainService.ValidateMethodCall(DomainOperationEntry domainOperationEntry, Object[] parameters, List`1 validationResults)
at System.ServiceModel.DomainServices.Server.DomainService.Query(QueryDescription queryDescription, IEnumerable`1& validationErrors, Int32& totalCount)Inner Exception:
令人讨厌的部分是这个错误不可重现,有时会发生。
答案 0 :(得分:0)
该错误表示您可能在查询方法上有一个RequiresRole,并且当前用户(缺少登录用户)不在所需角色中。 ValidateMethodPermissions是DomainService检查的位置,用户有权调用该查询。