Кажется, я спустился в кроличью нору. Я хотел бы преобразовать данные из наборов данных ADO .NET в тип Nullable. Сначала я предполагал, что прямой бросок (int?) Сделает это. Как я был наивен. Неправильно, сильно неправильно. Сейчас я пытаюсь написать универсальный конвертер, но зацикливаюсь на синтаксисе. Это так 2005 - кто-то, должно быть, уже решил эту проблему. Вы?
Зависание состоит в том, что когда я пытаюсь использовать тип Nullable в качестве ограничения на преобразователь, я получаю синтаксическую ошибку:
public class NullableDBConversion
{
public static T Convert<T>(object testValue) where T : Nullable<T>
{
if (testValue is DBNull)
{
return new Nullable<T>();
}
return new Nullable<T>((T)testValue);
}
}
Цель состоит в том, чтобы использовать единый метод, который использует дженерики для всех преобразований. Это возможно, или я должен написать несколько.