Manish Kumar Namdev Ответов: 2

Исключение в ASP.net


Здравствуйте Друзья

Я использую Visual Web Developer Express 2005.
И когда я запускаю свое приложение, это возвращает исключение.
Я пытался, но не нашел решения. И мое приложение работает на Windows Server 2008.

помоги мне преодолеть это. Я не мог понять, в чем именно заключается ошибка.


Код
Int32 east_Count = 0;
            Int32 west_Count = 0;
            Int32 north_Count = 0;
            Int32 madurai_Count = 0;
            string prefixQuery = "SELECT COUNT(*) FROM ";
            string postfixQuery = " WHERE MESSAGE='T2B' AND TRNDATE LIKE Concat(CONVERT(now(),date),'%')";
            using (OdbcCommand cmd = new OdbcCommand())
            {
                cmd.Connection = con;
                con.Open();

                cmd.CommandText = prefixQuery + "inbox_east" + postfixQuery;
                east_Count = Convert.ToInt32(cmd.ExecuteScalar());
                cmd.CommandText = prefixQuery + "inbox_east_master" + postfixQuery;
                east_Count += Convert.ToInt32(cmd.ExecuteScalar());
                               con.Close();

                lblEast.Text = east_Count.ToString();

            }
        }
        catch (Exception ex)
        {
            using (TextWriter tw = new StreamWriter(@"E:\Logs\Check.txt", true))
            {
                tw.WriteLine("=======Start======");
                tw.WriteLine(DateTime.Now.ToString());
                tw.WriteLine(ex.ToString());
                tw.WriteLine("=======End======");
            }
        }
        finally
        {
            con.Close();
        }
    }


Происходит исключение

Система.Исключение overflowexception: переполнение в результате выполнения арифметической операции.
в системе.Данных.В ODBC.Odbcdatareader выполняет.GetSqlType(int32 и я)
в системе.Данных.В ODBC.Odbcdatareader выполняет.GetValue(Int32 i)
в System.Data.Odbc.OdbcCommand.Executescalar так()




Я не мог найти ответа, если это работает на моей локальной машине, то он работает, но при работе на windows server 2008 появляются исключения

2 Ответов

Рейтинг:
8

koolprasadd

ваш результат может привести к большему значению и переполнению ограничений типа данных.
попробуйте сделать следующее

Int64 east_Count =0;


Manish Kumar Namdev

Я сделал то же самое, что и ты, но это не сработало.

Рейтинг:
17

RaisKazi

Ниже ссылка даст вам подробную информацию вокруг Система.исключение OverflowException.
Класс OverflowException

Скорее всего, ваш код выбрасывает исключение в любой из нижеприведенных строк.
east_Count = Convert.ToInt32(cmd.ExecuteScalar());
ОПЕРАЦИОННАЯ

east_Count += Convert.ToInt32(cmd.ExecuteScalar());<br />


Отладьте свой код и посмотрите, какие значения вы получаете от него cmd.ExecuteScalar().

Также проверьте, сколько записей вы получаете при выполнении запросов в Редакторе баз данных MySQL.


Manish Kumar Namdev

Я проверяю тот, который вы предложили

[no name]

Хорошо. Так каков же результат?

RaviRanjanKr

Интересный Ответ, Мои 5+

[no name]

Спасибо.