Идентификатор активности в приложении Asp.net core 2 - PullRequest
0 голосов
/ 27 февраля 2019

Я создал новое приложение в Asp.net Core 2 с MVC.

enter image description here

Затем, когда я открыл метод действия с ошибкой в ​​HomeController

public IActionResult Error()
{
    return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier });
}

Я также не могу понять обе операцииas HttpContext.TraceIdentifier.

Что меня больше зудит, так это вопросительный знак (?) после Activity.Current ( Activity.Current? .Id ).Какой-то новый синтаксис?

1 Ответ

0 голосов
/ 02 марта 2019

? - это нулевой условный оператор .Это новая функция в C # 6, которая упрощает проверку нуля.

Activity.Current?.Id и HttpContext.TraceIdentifier в этом контексте являются уникальными идентификаторами отслеживания, поэтому вы можете соотнести запрос с журналами и телеметрией.

Как правило, Activity.Current будет нулевым, если вы неиспользуя представление приложения или самостоятельно управляя действиями , следовательно, присутствует ?.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...