14

ADO.NetDataRowを指定すると、行の RowStateAddedModifiedorに変更するにはどうすればよいDeletedですか?

プロパティを直接設定してみました:

myDataSet.Tables[0].Rows[0].RowState = DataViewRowState.ModifiedOriginal;

コンパイラから次のエラー メッセージが表示されます。

error CS0200: Property or indexer 'DataRow.RowState' cannot be assigned to -- it is read only
4

1 に答える 1

25

、 、 のようにRowStateプロパティを明示的に設定する方法もありますが、正確には何が自動的に行われるのかを理解した方がよいと思います。SetAddedSetModifiedDelete

を変更しないように設定する必要がある場合は、行をRowState呼び出してそこから移動します。AcceptChanges変更された状態にする必要があり、現在はそうでない場合は、次のようなコードを介して行に変更を加えるときに、ロジック内AcceptChangesDataRowまたは別の場所で呼び出す必要がある可能性が高くなります。DataTable

row["field"] = "New Value";

に変更RowStateされますが、以前に変更を受け入れていたためModified、ベースライン、行の状態も含まれています。Original

ここでの私のポイントは、はい、RowStateこれらのメソッドのいくつかを明示的に設定できるということですが、ADO.NET インターフェイスをもう少し意図したように操作する必要があるように感じます。

于 2013-03-18T13:40:58.397 に答える