ToString () возвращает ноль? - PullRequest
3 голосов
/ 25 июля 2011

Я пытаюсь определить причину 'исключения нулевой ссылки' на опубликованном удаленном сайте. Поэтому я не могу отладить его напрямую и могу работать только с журналами. Итак, мой вопрос:
Возможно ли, что .ToString() метод любого из встроенных типов .NET возвращает null?

EDIT:
Я подозреваю, что DateTime.ToString(invariantCulture) метод с плохо сконструированными настройками культуры.

Ответы [ 3 ]

5 голосов
/ 25 июля 2011

Я не знаю ни одного типа, где это происходит. Это не невозможно - конечно, было бы легко написать свой собственный тип, который бы вел себя так - но я сомневаюсь любой из типов фреймворка.

Вы имеете в виду какие-то особые типы?

РЕДАКТИРОВАТЬ: DateTime.ToString(invariantCulture) должен никогда возвращать ноль - настройки культуры не должны иметь значения, если вы действительно получили инвариантную культуру.

2 голосов
/ 19 апреля 2012

Исправление, Object не равен NULL, если он возвращает NULL, NPE будет выброшен для NULL Object до того, как toString () будет даже попытаться вызвать:)

0 голосов
/ 25 июля 2011

Вы также можете переопределить метод ToString() и присвоить ему пользовательское значение.Если он все еще возвращает ноль, тогда объект является нулем.

http://msdn.microsoft.com/en-us/library/ms173154%28v=vs.80%29.aspx

...