Выйдите из отладки, прежде чем вводить действие в ASP.NET Core. - PullRequest
0 голосов
/ 24 ноября 2018

Мне нужно вернуть Roles.Claims в ASP.NET Core для динамического разрешения.

Когда я введу этот URL: https://localhost:44390/api/Role/GetRoleClaims/1008

, будет выполнено это действие:

[HttpGet("GetRoleClaims/{id}")]
public Task<Role> GetRoleClaims(int? id)
{
    return _roleManag.ClaimsOfRole(id.Value);
}

, затем выполнение перейдет на уровень обслуживания и запустит этот метод:

public Task<Role> FindRoleIncludeRoleClaimsAsync(int roleId)
{
    return Roles.Include(x => x.Claims).FirstOrDefaultAsync(x => x.Id == roleId);
}

public async Task<Role> ClaimsOfRole(int id)
{
    var role = await FindRoleIncludeRoleClaimsAsync(id);
    return role;
}

Переменная role заполнена правильными данными, но не возвращается к действию после этой строки return role;

Показывает веб-браузер и показывает это:

enter image description here

В чем проблема?Как я могу решить эту проблему?

Ответы [ 2 ]

0 голосов
/ 24 ноября 2018

Ошибка безопасного подключения не имеет ничего общего с этим кодом.Это может быть связано с:

  1. Ядро asp.net, недавно перемещенное в https по умолчанию
  2. Для https требуется сертификат
  3. По умолчанию для разработки Microsoft имеетна вашем компьютере генерируется самозаверяющий сертификат
  4. В браузерах отображается сообщение об ошибке, поскольку самозаверяющий сертификат не авторизован центром сертификации.

Параметры:

  • Посмотрите и проверьте, обслуживается ли ваш веб-сайт также портом для http: // вместо https
  • Используйте другой браузер, чтобы увидеть, если он дает вам опцию «принять это соединение»
  • Работайте над страницей MS, например, ASP.NET Core 2.1.0-preview1: улучшения для использования HTTPS

Либо это, либо вы просто ввели неверныйпорт.Откуда вы взяли 44390 от?

0 голосов
/ 24 ноября 2018

Ваш ClaimsOfRole по-прежнему async метод, и вам не хватает await здесь:

[HttpGet("GetRoleClaims/{id}")]
public async Task<Role> GetRoleClaims(int? id)
{
    return await _roleManag.ClaimsOfRole(id.Value);
}
...