Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/10: Рейтинг темы: голосов - 10, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 25.02.2009
Сообщений: 3
1

Добавление записи вместо обновления Dataset.WriteXml

06.10.2009, 10:47. Показов 2066. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
При загрузке формы делаю так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
ds = new DataSet("Data");
try
{
  ds.ReadXml("data.xml");
}
catch (Exception ex)
{
  s.Tables.Add("settings");
  DataTable dtb = ds.Tables["settings"];
 
  dtb.Columns.Add("lg", System.Type.GetType ("System.String"));
  dtb.Columns.Add("ps", System.Type.GetType("System.String"));
  DataRow drw = dtb.NewRow();
  drw["lg"] = "login";
  drw["ps"] = "password";
  dtb.Rows.Add(drw);
  ds.WriteXml("data.xml");
}
finally
{
  ds.ReadXml("data.xml");
  DataTable table = ds.Tables["settings"];
  DataRow[] rows = table.Select();
  tbLogin.Text = (string)rows[0]["lg"];
  tbPass.Text = (string)rows[0]["ps"];
}
Потом когда я пытаюсь сохранить:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
tbLogin_TextChanged(object sender, EventArgs e)
{
  if (bEnableUpdate == true)
  {
    DataTable dtb = ds.Tables["settings"];
    DataRow []drw = dtb.Select();
    object[] items = drw[0].ItemArray;
    items[0] = tbLogin.Text;
    drw[0].ItemArray = items;
    ds.AcceptChanges();
    ds.WriteXml("data.xml");
  }
}
Оно добавляет строку в место того чтобы её изменить:


XML
1
2
3
4
5
6
7
8
9
10
11
12
 
<?xml version="1.0" standalone="yes" ?> 
 <Data>
  <settings>
    <lg>logi</lg> 
    <ps>password</ps> 
   </settings>
  <settings>
    <lg>login</lg> 
    <psr>password</ps> 
   </settings>
  </Data>
Что уменя неправильно в коде?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.10.2009, 10:47
Ответы с готовыми решениями:

Добавление записи в Dataset, множество таблиц
Здравствуйте. У меня база представляет собой xml файл, в нем порядка 10 таблиц и одна общая...

CommandBuilder вместо обновления записей вставляет новые записи
пытаюсь обновить записи которые в datagridView, но CommandBuilder вставляет записи, а не обновляет...

Добавление записи вместо удаленной
В моей программе можно добавлять и удалять записи в Mysql базу, к примеру у меня заведено 10...

Добавление записей в DataSet
Хлопцы подскажите как задать индекс строке добавления данных? выдается сообщение что данная строка...

1
1923 / 428 / 41
Регистрация: 12.07.2007
Сообщений: 2,062
07.10.2009, 05:06 2
Дважды читаете файл в DataSet. Сначала в try, а затем finally. Поэтому две таблицы в датасете.

З.Ы. Если честно, то это не код, а то что лежит в том месте, через которое он же и реализован.
0
07.10.2009, 05:06
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.10.2009, 05:06
Помогаю со студенческими работами здесь

ListView: добавление записи, выбор записи, удаление записи
на форме есть три текст бокса: textbox1(имя), textbox2(фамилия), textbox3(отчество),...

Добавление полей связи в таблицы DataSet
Подскажите, пожалуйста, как добавить поля связи в таблицы DataSet. Имеется XML-файл - дерево...

Вставка записи в DataSet
Нужно добавить строку в датасет, в таблице есть инкремент(генератор), база в SQL Server Код такой:...

Удаление записи из DataSet
Пытаюсь удалить из DataSet несколько строк. Все нормально если удаление идет от последний записи к...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru