2015-08-07 2 views
-3

Я привязал текстовое поле имени моего клиента к модели клиента и установил режим на два пути. Теперь я хочу обновить отредактированное имя в базе данных. Как я могу это достичь?WPF MVVM с использованием LINQ to SQL

ответ

0

Ваш вопрос очень расплывчатый, поскольку он не говорит, хотите ли вы это в PropertyChanged или когда у вас есть кнопка с обработкой события Click или привязкой ICommand.

Решение о том, когда обновлять, полностью соответствует бизнес-модели, которую вы применяете. Вообще говоря, никогда не рекомендуется обновлять непосредственно из события PropertyChanged, потому что это может быть временное редактирование, и вы можете обновить его.

Например, если у вас есть UpdateSourceTrigger = PropertyChanged, то, как только символ будет напечатан, свойство обновляется с новым значением, и если вы включили события iNotifyPropertyChanged, это мгновенно приведет к обновлению базы данных. Поскольку соединение с базой данных является переходным процессом, обычно по сети, оно может быть или не быть доступным, и оно может или не может быть таймаутом во время частичного обновления. Таким образом, вы можете закончить блокировку своего кода или многопоточность, вызвав условия гонки.

Таким образом, всегда лучше реализовать изменения с помощью кнопки сохранения или когда экран закрыт/удален (например, что делает iOS/Android).

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