Stack Overflow на русском Asked by user399212 on December 23, 2021
Всем привет!
Может кто-нибудь объяснить, почему после AccesptCahges()
все равно выводит RowState "Detached"
?
using System;
using System.Data;
namespace RowStateDeleted
{
class Program
{
static void Main(string[] args)
{
DataTable table = new DataTable();
table.Columns.Add(new DataColumn("Column1"));
DataRow row = table.NewRow();
Console.WriteLine("Table rows count: " + table.Rows.Count);
Console.WriteLine("RowState: " + row.RowState);
Console.WriteLine();
row[0] = "SomeValue";
table.Rows.Add(row);
table.AcceptChanges();
Console.WriteLine("Table rows count: " + table.Rows.Count);
Console.WriteLine("RowState: " + row.RowState);
Console.WriteLine();
table.Rows[0].Delete();
Console.WriteLine("Table rows count: " + table.Rows.Count);
Console.WriteLine("RowState: " + row.RowState);
Console.WriteLine();
table.AcceptChanges();
Console.WriteLine("Table rows count: " + table.Rows.Count);
Console.WriteLine("RowState: " + row.RowState);
}
}
}
При вызове метода Delete()
строка не удалилась из таблицы, а пометилась удалённой. RowState
стало Deleted
.
После вызова AcceptChanges()
строка удалилась из таблицы. Её состояние стало Detached
. Вроде, всё логично.
Answered by Alexander Petrov on December 23, 2021
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP