Definition at line 2476 of file DataTable.cs.
2477 {
2480 {
2481 throw ExceptionBuilder.ArgumentNull("row");
2482 }
2483 if (
row.Table !=
this)
2484 {
2485 throw ExceptionBuilder.RowAlreadyInOtherCollection();
2486 }
2487 if (
row.rowID != -1)
2488 {
2489 throw ExceptionBuilder.RowAlreadyInTheCollection();
2490 }
2495 {
2497 }
2498 bool flag;
2500 {
2502 }
2503 try
2504 {
2505 try
2506 {
2509 }
2510 catch
2511 {
2513 {
2515 }
2518 throw;
2519 }
2521 {
2523 }
2525 {
2526 return;
2527 }
2529 for (
int i = 0;
i <
count;
i++)
2530 {
2533 {
2535 }
2536 }
2537 }
2538 finally
2539 {
2540 row.ResetLastChangedColumn();
2541 }
2542 }
void Add(TKey key, TValue value)
void SetNewRecordWorker(DataRow row, int proposedRecord, DataRowAction action, bool isInMerge, bool suppressEnsurePropertyChanged, int position, bool fireEvent, out Exception deferredException)
readonly DataColumnCollection _columnCollection
References System.Data.DataTable._columnCollection, System.Data.DataTable._nextRowID, System.Collections.Generic.Dictionary< TKey, TValue >.Add(), System.Data.ExceptionBuilder.ArgumentNull(), System.Data.InternalDataCollectionBase.Count, System.count, System.Runtime.Serialization.Dictionary, System.Data.DataTable.EnforceConstraints, System.L, System.Data.ExceptionBuilder.RowAlreadyInOtherCollection(), System.Data.ExceptionBuilder.RowAlreadyInTheCollection(), and System.Data.DataTable.SetNewRecordWorker().