Моим фаворитом является Платформа Spring. С 2,5 Spring MVC является задницей удара soooo, с новыми аннотациями, соглашением по функциям конфигурации, и т.д.
, Если Вы просто делаете что-то супер простое, Вы могли бы также просто попытаться использовать регулярный API Сервлета и не обеспокоиться платформой.
Нет хорошего способа проверить, является ли тип числовым, кроме сравнения его с реальными типами.
Это особенно верно, если определение числового немного отличается (в вашем случае, согласно коду, - целые числа без знака не являются числами).
Другое дело, что DataColumn.DataType согласно MSDN поддерживает только следующие типы:
] выделенные жирным шрифтом типы являются числовыми (в моем понимании), поэтому вам нужно обязательно их проверить.
Я бы лично написал метод расширения для типа DataColumn (не для TYPE!).
Я ненавижу if ... then..else , поэтому вместо этого я использую подход на основе SETS , например:
public static bool IsNumeric(this DataColumn col) {
if (col == null)
return false;
// Make this const
var numericTypes = new [] { typeof(Byte), typeof(Decimal), typeof(Double),
typeof(Int16), typeof(Int32), typeof(Int64), typeof(SByte),
typeof(Single), typeof(UInt16), typeof(UInt32), typeof(UInt64)};
return numericTypes.Contains(col.DataType);
}
И использование будет следующим:
if (col.IsNumeric()) ....
для меня достаточно просто
Возможно, вы могли бы сделать его короче с помощью:
System.Type theType = col.DataType AS System.Type
if(theType == System.Single || theType == System.Double...) {}