вставка DataTable в БД с помощью DataAdapter не работает

Я пытаюсь вставить DataTable в таблицу БД (БД находится на мобильном устройстве - Psion), используя DataAdapter. по какой-то причине это не работает - когда я проверяю таблицу БД, она просто отображается как пустая таблица...

код: >

private void btnCommTables_Click(отправитель объекта, EventArgs e)
{
try
{
DataSet ds = WSDanielGroup.Instance._WSDanielGroupToDevice.GetLoadTables();

             DataTable DT = ds.Tables["Peer"];  

            string SelectCMD = "INSERT INTO Peer(ID,PeerID) Values(?,?)";  
            SqlCeConnection cn = new SqlCeConnection(DBManager.sLocalConnectionString);  





          SqlCeDataAdapter da=new SqlCeDataAdapter();  
            da.InsertCommand = new SqlCeCommand(SelectCMD, cn);  

            cn.Open();  

            da.InsertCommand.Parameters.Add("@ID", SqlDbType.Int,4,"ID");  

            da.InsertCommand.Parameters.Add("@PeerID", SqlDbType.NVarChar,50, "PeerID");  
            int numRows = da.Update(DT);         
 }  

person Shirit    schedule 07.04.2011    source источник


Ответы (1)


Одно из возможных объяснений заключается в том, что в вашей таблице данных нет правильных версий строк. DataAdapter будет обновлять только те строки, которые были изменены в таблице. Если вы получаете его откуда-то еще, он думает, что все в порядке и ничего не нужно обновлять (строки не помечены как «грязные»). Подробнее здесь.

person Vladislav Zorov    schedule 07.04.2011