Изменение набора изменений в RIA Services - PullRequest
0 голосов
/ 28 апреля 2010

Я использую RIA Services Beta 2 с Linq2Sql и SL3. В моем SL3 у меня есть сетка данных, где я могу сделать некоторые отображения данных (обновления, вставки и удаления). Я переопределяю метод Submit при вызове SubmitChanges (). В методе отправки в доменной службе я делаю некоторую проверку. Если проверка не пройдена для определенного ChangeSetEntry в ChangeSet, добавляется ValidationErrors. Затем я вызываю base.Submit (changeSet).

Таким образом, если в наборе изменений есть 3 объекта, и один из объектов приводит к ошибке проверки, остальные 2 объекта также откатываются. Похоже, RIA Services выполняет неявную транзакцию и, следовательно, либо отправляет все 3, либо ни одной, даже если 2 из 3 не имеют ошибки проверки. Есть ли способ для службы RIA, чтобы предотвратить откат действительных объектов и аннулировать только те, которые не удалось проверить.

Входы будут оценены.

Спасибо Мохит

1 Ответ

0 голосов
/ 18 мая 2010

Во-первых, я немного озадачен тем, как или почему вы используете SL3, потому что он был поддержан только с бета-версией 1.

Есть ли причина не использовать встроенную проверку? Если вы выполнили большую часть проверки, она будет перехвачена на стороне клиента и может быть исправлена ​​до отправки сервером.

Возможно, вы сможете достичь того, чего хотите, переопределив метод PersistChangeSet, но я бы беспокоился о том, чтобы синхронизировать ваш клиент с сервером, если сохраняются только некоторые объекты.

http://weblogs.asp.net/fredriknormen/archive/2009/12/29/wcf-ria-services-domainservice-life-cycle-and-adding-transactions.aspx

...