Добавление двух датаров в третий ряд - PullRequest
1 голос
/ 18 января 2011

Можно ли добавить два datarow и получить результат в третьем datarow того же типа данных в c #?Кроме того, возможно ли связать два datarow с строкой результатов, чтобы при изменении значений они отражались в строке результатов?

Заранее спасибо

1 Ответ

0 голосов
/ 18 января 2011

Отредактированный ответ для использования с DataTable , опять же, я не проверял этот код, просто написал его.

    public static class DataTableHandler
    {
        private const string COL_PRICE = "PriceColumn";
        private const string COL_QUANTITY = "QuantityColumn";

        public static DataTable AddTotalRow(DataTable dataTable)
        {
            int totalQuantity = 0;
            decimal totalPrice = 0.0;

            CalculateTotals(dataTable, out totalQuantity, out totalPrice);

            DataRow row = dataTable.AddRow();
            row.Cells[COL_QUANTITY].Value = totalQuantity;
            row.Cells[COL_PRICE].Value = totalPrice;

            dataTable.Rows.Add(row);
            return dataTable;
        }

        private static void CalculateTotals(DataTable dataTable, out int totalQuantity, out decimal totalPrice)
        {
            totalPrice = 0.0;
            totalQuantity = 0;

            foreach (DataRow r in dataTable.Rows)
            {
                totalPrice += (decimal)r.Cells[COL_PRICE].Value;
                totalQuantity += (int)r.Cells[COL_QUANTITY].Value;
            }
        }
   }
...