Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM Новый топик    Ответить
 SqlCeDataAdapter + SqlCeCommandBuilder  [new]
oeeegr
Member

Откуда: Костанай
Сообщений: 2
Просьба, подскажите как правильно создать команду UPDATE для источника SqlCeConnection
SqlCeConnection conn = new SqlCeConnection("data source...");
SqlCeDataAdapter da = new SqlCeDataAdapter("select * from client", conn);
SqlCeCommandBuilder cb  = new SqlCeCommandBuilder(da);

DataSet ds = new DataSet();
da.Fill(ds, "client");

// и т.д.


дальше получается неясная для меня картина,
cb.GetUpdateCommand().CommandText; 
// данный метод SqlCeCommandBuilder показывает автоматически созданную UPDATE - 
// UPDATE [client] SET [cli_name] = @p1 WHERE (([id_cli] = @p2) AND ([cli_name] = @p3))

// а свойство SqlCeDataAdapter
da.UpdateCommand.CommndText;
// выдает null 


почему? эти два класса связаны друг с другом и по моему мнению должны указывать один и тот же UPDATE.
и далее у меня da.Update(ds, "client") записи не обновляет
6 апр 16, 12:02    [19022514]     Ответить | Цитировать Сообщить модератору
 Re: SqlCeDataAdapter + SqlCeCommandBuilder  [new]
buser
Member

Откуда: Санкт-Петербург
Сообщений: 4537
oeeegr, а хелп читать - не барское занятие! Давайте рассуждать логически, исходя... ну хоть из названия классов...
и по моему мнению должны
6 апр 16, 12:39    [19022713]     Ответить | Цитировать Сообщить модератору
 Re: SqlCeDataAdapter + SqlCeCommandBuilder  [new]
oeeegr
Member

Откуда: Костанай
Сообщений: 2
buser,
читаю по ссылке
help
При наличии связи с DataAdapter объект DbCommandBuilder автоматически создает свойства InsertCommand, UpdateCommand и DeleteCommand объекта DataAdapter, если они являются пустыми ссылками.

ну и почему тогда в моем случае UpdateCommand автоматически не создается?
6 апр 16, 13:40    [19023120]     Ответить | Цитировать Сообщить модератору
Все форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM Ответить