我在 Controller 中使用此资源授权:
var result = await _authorizationService.AuthorizeAsync(User, document, operation);
我需要测试我的 Controller ,并且需要通过测试的授权。
我试过了:
_substituteAuthorizationService.AuthorizeAsync(Arg.Any<ClaimsPrincipal>(), null, Arg.Any<IEnumerable<IAuthorizationRequirement>>())
.ReturnsForAnyArgs(new AuthorizationResult(......));
但我无法创建AuthorizationResult,因为它没有公共(public)构造函数。
有任何想法吗?谢谢!
最佳答案
这里没有太多细节https://docs.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.authorization.authorizationresult?view=aspnetcore-2.0
但是您可以从静态方法中返回
AuthorizationResult.Success()
AuthorizationResult.Failed()
关于c# - 如何在.net Core 2.0中模拟IAuthorizationService,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46922341/