Чтобы определить источник ошибки NullReferenceException в Visual Studio, можно воспользоваться отладчиком. 1 Он покажет, где произошло исключение, значения локальных переменных, стек вызовов и даже то, какая переменная вызвала исключение своим нулевым значением. 1
Ещё один способ — использовать функцию Null Reference Analysis. 3 Она доступна в Visual Studio 2017 и более поздних версиях. 3 Чтобы включить анализ, нужно перейти по пути Debug | Windows | Settings и выбрать «Исключения во время выполнения общего языка» (Common Language Runtime Exceptions) или расширить узел и проверить интересующие исключения. 3 В этом случае можно проверить System.NullReferenceException. 3 При запуске кода отладчик прервёт выполнение при возникновении NullReferenceException и откроет окно «Выброшено исключение» (Exception Thrown). 3
Если использовать отладчик невозможно, можно обратиться к исключению и трассировке стека. 1 По ним тоже можно определить, где произошло исключение и какой стек вызовов, что поможет выяснить, какое значение равно нулю. 1
Также для определения источника ошибки можно разделить цепочечные вызовы методов на несколько строк. 3 Это поможет выявить, какой вызов вызвал ошибку. 3