DataColumn DataType int и long - PullRequest
       2

DataColumn DataType int и long

1 голос
/ 06 февраля 2012

Возможно ли иметь DataColumn в DataTable, который содержит значения int и long?Он должен возвращать значение int, если допустимое значение int, в противном случае он должен возвращать длинное значение.

Для некоторой предыстории, почему я хочу добиться этого, я выпустил продукт, который создает DataColumn типа int, но он долженбыло долго с самого начала.Теперь я не хочу разбивать существующие проекты, которые явно приводят значение к int, но я хотел бы разрешить длинные значения в столбце.

Есть ли событие, на которое я могу подписаться в DataTable для преобразованиязначение в int?

Следующий код должен выполняться правильно.

        DataTable dataTable = new DataTable();
        dataTable.Columns.Add("IntAndLong", typeof(long));

        DataRow intRow = dataTable.NewRow();
        intRow[0] = 123;
        dataTable.Rows.Add(intRow);

        DataRow longRow = dataTable.NewRow();
        longRow[0] = 3000000000;
        dataTable.Rows.Add(longRow);

        long longValue = (long)dataTable.Rows[1][0];
        int intValue = (int)dataTable.Rows[0][0];

1 Ответ

1 голос
/ 06 февраля 2012

Я бы предложил собрать значение столбца данных в переменной типа long, проверить, чтобы его значение было меньше, чем int.MaxValue, и больше, чем int.MinValue, а затем приведите его к переменной int, если вам это нужно.

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