Как получить доступ к исходной и измененной версиям DataRow со строгим типом?

Я пишу код для эмуляции шаблона единицы работы в моем приложении winforms над наборами данных.

У меня есть следующее:

foreach (EomApp1.Formss.Accounting.Data.AccountingView.AccountingViewRow 
                in accountingView.GetChanges(DataRowState.Modified).Tables[0].Rows)
            {
                 // break point -> immediate window

непосредственное окно:

modified.Tables[0].Rows[0]["Cost/Unit", DataRowVersion.Original]
1
modified.Tables[0].Rows[0]["Cost/Unit", DataRowVersion.Current]
0

Есть ли способ получить доступ к вышеуказанной информации, используя строго типизированные наборы данных? (в моем примере accountView есть, но я не знаю, как получить доступ к измененным объектам DataRowVersion без использования строковых имен столбцов.


person Aaron Anodide    schedule 21.07.2011    source источник


Ответы (2)


насколько я знаю, их нет.
Чтобы избавиться от волшебных строк, вы могли бы сделать

modified.Tables[0].Rows[0][Tables[0].CostUnitColumn.ColumnName, DataRowVersion.Current]
person Julian de Wit    schedule 22.07.2011

Способ расширения DataRowExtensions.Field в сборке System.Data.DataSetExtensions решает эту проблему? Обратите внимание на параметры для DataColumn и DataRowVersion.

person si618    schedule 22.07.2011