2

MSDNによるDataRow. ただし、これには、列インデックスまたは列名のいずれかを使用する必要があります。これは厳密に型指定されたデータセットであり、魔法の列インデックス番号または文字列リテラルを使用して必要な列を指定するという保守性の悪夢に陥りたくありません。

厳密に型指定された行全体を取得する方法はありますか? または、それが不可能な場合、厳密に型指定された参照を使用して、厳密に型指定された単一の列を取得する方法はありますか?

4

2 に答える 2

3

厳密に型指定された参照を使用した単一の厳密に型指定された列の例:

// DataTable...
SkZapDataSet.vdSkZapDocumentDataTable dt
    = args.Row.Table as vdSkZapDocumentDataTable;
// DataRow...
SkZapDataSet.vdSkZapDocumentRow dr
    = args.Row as SkZapDataSet.vdSkZapDocumentRow;
// Value...
int id = (int)dr[dt.DocumentIdColumn.ColumnName, DataRowVersion.Original];
于 2016-12-17T07:00:08.300 に答える
1

私はあなたがここで全面的に三振する可能性が高いのではないかと心配しています. OriginalModifiedRowVersionの違いは、AcceptChanges()呼び出されるまでしか存在しません... 有限の期間です。そして、Columnsその中心にあるコレクションは、ArrayList次のアクセサーを持つ です。

public DataColumn this[int index] { get; }
public DataColumn this[string name] { get; }

DataColumn他の方法を見つける方法がわかりません。

于 2013-06-19T16:29:10.127 に答える