2008-11-29 2 views
0

Я пытаюсь сериализовать объект в базу данных sql compact. Я использую VCS Express 2008. Каждый раз, когда я запускаю тест, чтобы проверить, отправлены ли мои данные в базу данных, в базе данных ничего нет. Мой код:Обновление адаптера таблицы C#

string inputForDB = null; 
       QuizCategoryTableAdapter quizCategoryAdapter = new QuizCategoryTableAdapter(); 
       QuizApp._QuizApp_DataSet.QuizCategoryDataTable quizCategoryTable = new QuizApp._QuizApp_DataSet.QuizCategoryDataTable(); 
       quizCategoryAdapter.Fill(quizCategoryTable); 
       //Check to see if quizCategory exists 
       if (quizCategoryTable.Rows.Contains(quizCategory._categoryID)) { 
        //overwrite (update) 
        //Serialize the object and put in db 
        MemoryStream MemStream = new MemoryStream(); 
        IFormatter formatter = new BinaryFormatter(); 
        formatter.Serialize(MemStream, quizCategory); 
        inputForDB = Convert.ToBase64String(MemStream.ToArray()); 
        quizCategoryAdapter.Insert(quizCategory._categoryName, quizCategory._categoryDescription, inputForDB); 
        //send update to database 
        MemStream.Close(); 
       } else { 
        //append (insert) 
        MemoryStream MemStream2 = new MemoryStream(); 
        IFormatter formatter2 = new BinaryFormatter(); 
        formatter2.Serialize(MemStream2, quizCategory); 
        inputForDB = Convert.ToBase64String(MemStream2.ToArray()); 
        quizCategoryAdapter.Insert(quizCategory._categoryName, quizCategory._categoryDescription, inputForDB); 
        MemStream2.Close(); 
       } 

Он компилируется в порядке, но по какой-то причине не работает.

ответ

0

Вы должны вызвать метод Update адаптера, а также AcceptChanges на DataSet

+0

Не .net 3.5 есть обновление встроенного в TableAdapter? – jle 2008-11-29 05:51:44

Смежные вопросы