Ну, я бы лично написал это как:
if (CPath == null)
{
CPath = Request.Path;
}
чтобы было понятнее. Альтернатива (как упоминалось в другом месте):
CPath = CPath ?? Request.Path;
Но почему вас волнует, если есть дополнительное задание? Вы действительно думаете, что это будет значительный удар по производительности?
Обратите внимание, что если CPath
является полем, а не локальной переменной, это может потенциально иметь значение - потому что значение CPath
может измениться между первой проверкой и второй оценкой, и снова между оценкой и назначение. Будет ли это замечено, зависит от кэширования и т. Д., Но это не так просто, как может показаться на первый взгляд.