Вебинар: Go-Go-Gadg...Error? Смотрим, как ошибаются Go разработчики! - 26.08
Анализатор обнаружил бессмысленное сравнение результата вызова метода GetType у объекта типа Nullable<T> c typeof(Nullable<T>). Метод GetType для значений типа Nullable<T> всегда возвращает нижележащий тип.
Рассмотрим пример:
public void Foo<T>(Nullable<T> value) where T : struct
{
if (value.GetType() == typeof(Nullable<int>))
{
....
}
....
}
В данном случае результат сравнения всегда вычисляется как false, т.к. вызов value.GetType() вернёт тип T.
Исправить код можно следующим образом:
public void Foo<T>(Nullable<T> value) where T : struct
{
if (value.GetType() == typeof(int))
{
....
}
....
}
Была ли полезна эта страница документации?
Мы ответим вам на:
Если вы так и не получили ответ, пожалуйста, проверьте, отфильтровано ли письмо в одну из следующих стандартных папок: