Другим сценарием является то, что вы нанесли нулевой объект в тип значения . Например, код ниже:
object o = null;
DateTime d = (DateTime)o;
Он выкинет NullReferenceException
в роли. В приведенном выше примере это кажется совершенно очевидным, но это может произойти в более «поздних связующих» сложных сценариях, где нулевой объект был возвращен из некоторого кода, которого вы не являетесь, и приведение, например, генерируется некоторой автоматической системой.
Одним из примеров этого является этот простой фрагмент привязки ASP.NET с элементом управления календарем:
" />
Здесь SelectedDate
на самом деле является свойством - типа DateTime
- типа Calendar
Web Control, и привязка может отлично вернуть что-то null. Неявный генератор ASP.NET создаст кусок кода, который будет эквивалентен приведенному выше методу. И это поднимет NullReferenceException
, что довольно сложно определить, потому что он лежит в сгенерированном ASP.NET коде, который компилирует отлично ...
Нажмите Ctrl + H или посмотрите в меню Поиск для поиска> Поиск или Поиск> Файл в зависимости от версии. В нижней части диалогового окна нажмите «Заменить» ... Там вы найдете замену в функциях файлов.
Я попробовал следующий вариант в Helios Version Eclipse. Просто нажмите CTRL + F, вы увидите окно «Найти / заменить» на экране
Я не знаю о команде, но просто нажмите «ctrl + h» диалоговое окно, которое появляется, когда у вас есть то, что вам нужно
Нажмите Ctrl + H или зайдите в меню «Поиск» для поиска «Поиск» или «Поиск»> «Поиск файла». В нижней части диалогового окна нажмите «Заменить»