Используйте метаданные , если можете
То, что вы должны угадывать, что это за типы данных, не очень хорошая идея.
Две вещи
1 Откуда поступают данные?
Если это база данных, вы уверены, что это строки?
Если это база данных, должны быть возвращены некоторые метаданные, которые сообщат вам, каковы типы данных полей.
Если это файл Xml, определена ли схема, которая даст вам типы?
2 Если вам нужно продолжать угадывать.
Имейте в виду, что у вас могут быть строки, которые оказываются числами, но являются вполне допустимыми строками, например номерами телефонов, номерами банковских счетов, которые лучше всего выражать в виде строк.
Кроме того, эти числа могут иметь много цифр, если вы конвертируете их в двойные числа, вы можете потерять некоторые цифры из-за неточностей с плавающей запятой (у вас должно быть в порядке до 14 или 15 цифр)
Я уверен, что к настоящему времени - потому что я потратил свое время, набирая это - есть много ответов, говорящих вам, как это сделать (например, сначала tryparse int, затем double, затем test length для char, если нет, то это строка и т. д.), но на вашем месте я бы попробовал НЕ делать этого и посмотреть, есть ли какой-нибудь способ, которым вы можете получить, или передать некоторые метаданные, которые скажут вам, какого типа это IS а не только тип может быть