Чтобы сделать это в C # без использования Try / Catch:
int value = 0;
if (Int32.TryParse("string to parse", out value))
{
// Value parsed correctly
}
else
{
// Could not be parsed.
}
Возможно, вам лучше сделать это в запросе к базе данных, если это возможно. Также, как другие предположили, почему числовое значение хранится в поле varchar?
Редактировать
Оба Transact SQL и PL / SQL диалекты поддерживают функцию CAST
.
Возможно, вы могли бы выполнить преобразование в запросе, используя, хотя имейте в виду, что могут быть тонкие различия в фактической базе данных, которую вы используете.
SELECT ..., CAST(field_name AS int), ... FROM table_name ...
Благодарю Анджая за его самых ценных вкладов.