Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
30.06.2011, 12:54
|
|||
---|---|---|---|
|
|||
обертка модели данных в MVVM для автосгенерированных типов |
|||
#18+
Добрый день. При разработке используется подход MVVM(Model-View-ViewModel). В качестве модели данных волне можно было бы использовать классы, автосгенерированные с помощью утилиты SlSvcUtil.exe из wsdl и xsd сервиса, но... Вся проблема в том, что сгенерированный код выглядит примерно так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Так вот, в таком автосгенерированном коде мне очень не хватает одной строки - вызова в сеттере в самом начале валидатора свойства. И мне нужно чтобы вызов валидирования делался именно в сеттере, а не как то там еще как раз по причине применения подхода MVVM. Так как влиять на автогенерируемый код я не могу, то на ум приходит только одно решение, написать прослойку из собственного класса, который в get/set выдавал/устанавливал бы не свои приватные поля, а значения моего автосгенерированного класса.: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
Может как-то можно решить мою проблему проще? Поделитесь опытом. Вообще, когда в качестве модели данных в MVVM всегда можно рассматривать автосгенерированные классы, для каких целей и в каких ситуациях Вы пишете свои собственные классы для Model? Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.06.2011, 14:34
|
|||
---|---|---|---|
обертка модели данных в MVVM для автосгенерированных типов |
|||
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
|
07.07.2011, 14:43
|
|||
---|---|---|---|
обертка модели данных в MVVM для автосгенерированных типов |
|||
#18+
уТКа, Интересно, но не решает вопрос автора. У меня есть, кстати, схожий вопрос, только в аспекте MVVM и EntityFramework ... |
|||
:
Нравится:
Не нравится:
|
|||
|
08.07.2011, 06:42
|
|||
---|---|---|---|
обертка модели данных в MVVM для автосгенерированных типов |
|||
#18+
ValidationRule IDataErrorInfo ... |
|||
:
Нравится:
Не нравится:
|
|||
|
28.07.2011, 11:13
|
|||
---|---|---|---|
|
|||
обертка модели данных в MVVM для автосгенерированных типов |
|||
#18+
NetFantomуТКа, Интересно, но не решает вопрос автора. У меня есть, кстати, схожий вопрос, только в аспекте MVVM и EntityFramework Согласен, это немного не то чего я хотел. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
28.07.2011, 11:17
|
|||
---|---|---|---|
|
|||
обертка модели данных в MVVM для автосгенерированных типов |
|||
#18+
Алексей КValidationRule IDataErrorInfo Не могли бы подробнее, как это можно применить для решении моего вопроса, т.е. без ручного вмешательства в автосгенерированный код прокси? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.07.2011, 05:40
|
|||
---|---|---|---|
|
|||
обертка модели данных в MVVM для автосгенерированных типов |
|||
#18+
Вот неплохое решение http://datumnode.com ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.07.2011, 06:01
|
|||
---|---|---|---|
обертка модели данных в MVVM для автосгенерированных типов |
|||
#18+
teepokДобрый день. При разработке используется подход MVVM(Model-View-ViewModel). В качестве модели данных волне можно было бы использовать классы, автосгенерированные с помощью утилиты SlSvcUtil.exe из wsdl и xsd сервиса, но... Так как влиять на автогенерируемый код я не могу, то на ум приходит только одно решение, написать прослойку из собственного класса, который в get/set выдавал/устанавливал бы не свои приватные поля, а значения моего автосгенерированного класса.: Есть совсем другое решение - кодогенераторы. Студия содержит встроенный, для ЕF есть готовые шаблоны, которые можно настраивать под себя. Помимо этого полно сторонних кодогенераторов(один из самых мощных - CodeSmith). При таком подходе можно получить на выходе все, что угодно и даже готовое приложения: классы для бизнес-объектов и сервисов; формы, еtc ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.07.2011, 09:55
|
|||
---|---|---|---|
обертка модели данных в MVVM для автосгенерированных типов |
|||
#18+
teepokАлексей КValidationRule IDataErrorInfo Не могли бы подробнее, как это можно применить для решении моего вопроса, т.е. без ручного вмешательства в автосгенерированный код прокси? teepokИ мне нужно чтобы вызов валидирования делался именно в сеттере, а не как то там еще как раз по причине применения подхода MVVM. Странное утверждение. Надо отказаться от него как можно скорее. Далее, если хочется валидации во ViewModel - делаете partial class, в нём реализация IDataErrorInfo. Если хочется валидации во View - используете ValidationRule. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.07.2011, 09:59
|
|||
---|---|---|---|
обертка модели данных в MVVM для автосгенерированных типов |
|||
#18+
SeVateepok... В качестве модели данных волне можно было бы использовать классы, автосгенерированные с помощью утилиты SlSvcUtil.exe из wsdl и xsd сервиса ... Есть совсем другое решение - кодогенераторы. Студия содержит встроенный, для ЕF есть готовые шаблоны, которые можно настраивать под себя. Помимо этого полно сторонних кодогенераторов(один из самых мощных - CodeSmith). При таком подходе можно получить на выходе все, что угодно и даже готовое приложения: классы для бизнес-объектов и сервисов; формы, еtcА SvcUtil.exe не кодогенератор?! Если его вызов завернуть для удобства в T4 - так вообще красота... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=21&mobile=1&tid=1442210]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
others: | 309ms |
total: | 432ms |
0 / 0 |