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