Как я могу запретить отслеживание изменений службы RIA для определенных полей?

#silverlight #silverlight-4.0 #entity-framework-4 #silverlight-3.0 #wcf-ria-services

#silverlight #silverlight-4.0 #entity-framework-4 #silverlight-3.0 #wcf-ria-services

Вопрос:

Как я могу запретить отслеживание изменений службы RIA для определенных свойств. У меня есть частичный класс, и я хочу, чтобы служба RIA не отслеживала изменения в нем. Как я могу это сделать?

В настоящее время, если я вижу в сгенерированном коде, я могу использовать такие методы, как OnXXXChanging (), OnXXXChanged () и т.д. И т.п. Я хочу, чтобы они не создавались для моих пользовательских свойств.

Заранее спасибо 🙂

Комментарии:

1. Есть ли шанс, что вы могли бы просто переместить часть на клиент?

2. Это не поможет, потому что я заполняю эти поля на сервере (но они не являются частью модели базы данных).

Ответ №1:

Чтобы остановить отслеживание (или даже генерацию) службы RIA свойства, просто добавьте [Exclude] атрибут к свойству (либо в .shared.cs классе, либо в классе метаданных.

Если вы затем добавите [DataMember] атрибут, WCF все равно сериализует / десериализует его, но службам RIA это будет безразлично.