Ошибка: не удается преобразовать лямбда-выражение в тип «Утверждение», поскольку это не тип делегата, для авторизации в ASP.NET - PullRequest
0 голосов
/ 13 июля 2020

Я не профессиональный программист, и во время процесса авторизации в веб-API я получаю следующую ошибку: «Ошибка CS1660: не удается преобразовать лямбда-выражение в тип« Утверждение », поскольку это не тип делегата (CS1660)». Я пытаюсь ввести go внутри этой JSON строки:

 "resource_access": {
                        "frontend": {
                        "roles": ["ClientAdmin"]}

и перейти к «ролям», чтобы проверить их роль. Вот мой код:

var tokenHandler = new JwtSecurityTokenHandler();
    // var schemes = services.AddAuthentication(settings, tokenHandler).ToArray();


    services.AddControllersWithViews();
    services.AddRazorPages();
   
    services.AddAuthorization(options =>
    {
        options.AddPolicy("RequireAdminRole",
     
            policybuilder => policybuilder.RequireAssertion(context => context.User.Claims
            .Single(c => "resource_access") // get the claim value
            .Contains(c => "admin")));


    });
   

Может ли кто-нибудь помочь мне понять, что я делаю не так? Заранее большое спасибо за вашу помощь :)

...