несколько не интуитивно понятно работа с этим Type. т.е. передачи значений через object.
Дело в том, что передаются значения различных типов (в основном string, int, float, double) в виде object, и надо потом орпеделить какой тип переменной, для последующей корректной работы с ней.
прочтя MSDN, нашел только одни способ
object o = value;
if (o.GetType().Name == "Int32")
//
else if (o.GetType().Name == "Double")
//
....
нет ли что-нить проще писаемое?, ведь только Int'ов там 3 (16, 32, 64). да и кто гарантирует что имя типа не измениться во Framework 3, 4, 5 etc.?
Здравствуйте, nasyrov, Вы писали:
N>прочтя MSDN, нашел только одни способ
N>object o = value;
N>if (o.GetType().Name == "Int32")
N> //
N>else if (o.GetType().Name == "Double")
N> //
N>....
if(o.GetType() == typeof(System.Int32))
...
Здравствуйте, nasyrov, Вы писали:
N>несколько не интуитивно понятно работа с этим Type. т.е. передачи значений через object.
N>Дело в том, что передаются значения различных типов (в основном string, int, float, double) в виде object, и надо потом орпеделить какой тип переменной, для последующей корректной работы с ней.
N>прочтя MSDN, нашел только одни способ
N>object o = value;
N>if (o.GetType().Name == "Int32")
N> //
N>else if (o.GetType().Name == "Double")
N> //
N>....
N>нет ли что-нить проще писаемое?, ведь только Int'ов там 3 (16, 32, 64). да и кто гарантирует что имя типа не измениться во Framework 3, 4, 5 etc.?
if (o is int)
{
}
else if (o is double)
{
}
Здравствуйте, nasyrov, Вы писали:
N>object o = value;
N>if (o.GetType().Name == "Int32")
N> //
N>else if (o.GetType().Name == "Double")
N> //
N>....
N>нет ли что-нить проще писаемое?, ведь только Int'ов там 3 (16, 32, 64). да и кто гарантирует что имя типа не измениться во Framework 3, 4, 5 etc.?
if (o is Int32)
//
else if (o is double)
//
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>