Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
В прошлом проекте решил обойтись без них - в итоге сущности уровня БД превратились в какую-то невнятную кашу с полями помеченными [NotMapped] и прочая.. А во вьюхи местами передавались жуткие Tuple<>. Так что решено - вьюмоделям быть. Но сейчас решил отрефакторить свои 30 сущностей и чем дальше в лес... Как правильней поступить? Я в итоге сделал так: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Через наследование решил заморочить, чтобы не париться с "синхронизацией" полей между классами, обычно они нужны одинаковыми. Это нормально? Смущает, что как-то дофига работы вылезло - кучу конструкторов создать, конвертеров из одного класса в другой... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 00:03 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Monochromatique, Ужасно! 1. базовый класс для EF и для VM -- очень-очень-очень-очень-очень плохо 2. конструктор у VM -- плохо 3. пытаться равнять VM / EF-Entity -- плохо что смущает в подходе независимых EF-Entity и VM ? которые друг о друге ничего не знают? то, что оверхеда много? надо повторять поля там и там? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 00:14 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttMonochromatique, Ужасно! 1. базовый класс для EF и для VM -- очень-очень-очень-очень-очень плохо 2. конструктор у VM -- плохо 3. пытаться равнять VM / EF-Entity -- плохо что смущает в подходе независимых EF-Entity и VM ? которые друг о друге ничего не знают? то, что оверхеда много? надо повторять поля там и там? 1. Почему? 2. Почему? Гарантия того, что все поля у VM будут проиничены. 3. ??? Еще вчера сущность EF и являлась VM. А сегодня их равнять нельзя. Наследование от абстрактного класса и единственный конструктор - даёт гарантию от того кейса, когда при добавлении одного поля - придётся носиться по всему коду - и искать - где я забыл проинитить новое поле. Ну и то, что нужно вручную прописывать поля, да.. Они же реально должны быть одинаковыми, разве что в VM добавлена какая-то мишура для Вьюхи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 00:38 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Monochromatique, hVostt что смущает в подходе независимых EF-Entity и VM ? которые друг о друге ничего не знают? Самый что не на есть правильный вариант! +1 к SOLID hVostt то, что оверхеда много? надо повторять поля там и там? Да нет уже такого оверхеда, как было раньше! Сейчас существует такое количество мапперов и Automapper'ов, что об оверхеде и речи вести не стоит! Так что вывод - "независимые Model и ViewModel - правильное решение! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 02:49 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 04:53 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
CalabongaДа нет уже такого оверхеда, как было раньше! Сейчас существует такое количество мапперов и Automapper'ов, что об оверхеде и речи вести не стоит! Так что вывод - "независимые Model и ViewModel - правильное решение!Чтобы при изменении структуры данных пришлось править её в двух местах без контроля компилятором? Решение для тех, кто любит боль и страдания. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 04:54 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Алексей К Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Это лежит на поверхности, но не избавляет от необходимости повторять поля со всеми аннотациями. Не ссылаться же во вьюхах на модель ef, пусть и в составе vm. Да и архитектурно это решение выглядит странновато, типа vm для галочки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 07:14 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
CalabongaMonochromatique, hVostt что смущает в подходе независимых EF-Entity и VM ? которые друг о друге ничего не знают? Самый что не на есть правильный вариант! +1 к SOLID hVostt то, что оверхеда много? надо повторять поля там и там? Да нет уже такого оверхеда, как было раньше! Сейчас существует такое количество мапперов и Automapper'ов, что об оверхеде и речи вести не стоит! Так что вывод - "независимые Model и ViewModel - правильное решение! Насколько я понимаю - мапперу все равно нужно задавать правила? Если так - то проще заюзать свой, ИМХО. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 07:16 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
CalabongaMonochromatique, hVostt что смущает в подходе независимых EF-Entity и VM ? которые друг о друге ничего не знают? Самый что не на есть правильный вариант! +1 к SOLID Так в случае наследования от единого абстрактного класса EF-entity и VM тоже ничего друг о друге "не знают". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 07:19 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
А может быть еще и на входе контроллера собирать VM?? А не EF-Entity? Как-то странно всё это выглядит. Надо ваять кучу конвертеров, с ручным контролем. И как справедливо заметил Алексей - ошибки в рантайме - это вообще метатреш. Может отделаться методами расширения к EF-сущности? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 07:32 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
В случае использования отдельной VM придется использовать инит ВСЕХ полей, независимо от того - нужны они или нет. О ленивой загрузке от EF придется забыть. Тоже трешовенько. Мне вообще может только название нужно, но я подтяну все связи вообще. Сейчас методы расширения к EF кажутся самыми привлекательными. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 07:37 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiqueАлексей К Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Это лежит на поверхности, но не избавляет от необходимости повторять поля со всеми аннотациями.Инкапсуляция как раз и не требует дублирования структуры данных. А вот атрибуты на свойствах для View - это действительно создаёт проблемы, я бы не использовал их по этой причине. MonochromatiqueНе ссылаться же во вьюхах на модель ef, пусть и в составе vm.Почему нет? MonochromatiqueДа и архитектурно это решение выглядит странновато, типа vm для галочки.Нормально выглядит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 07:39 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Monochromatique1. Почему? Жёсткая зависимость, которая будет неистово колотить по лбу всё время разработки. Monochromatique2. Почему? Гарантия того, что все поля у VM будут проиничены. Этого не нужно. А когда вдруг становится нужно, похоже пора заниматься рефакторингом. Вью-модели для ASP.NET MVC должны быть максимально тупые. Monochromatique3. ??? Еще вчера сущность EF и являлась VM. А сегодня их равнять нельзя. Никогда не являлась. Не было такого. MonochromatiqueНаследование от абстрактного класса и единственный конструктор - даёт гарантию от того кейса, когда при добавлении одного поля - придётся носиться по всему коду - и искать - где я забыл проинитить новое поле. Нет никакой гарантии. Что такое поле? Свойство класса? Ты слабо понимаешь что такое вью-модель. Например, одно поле ввода во вью-модели может разворачиваться в в итоге создание дополнительных объектов. Если же ты делаешь тупой редактор базы данных (как phpMySql), а не бизнес-приложение, то возможно ты себе немного упростишь работу. Но ты определишь, что ты делаешь. MonochromatiqueНу и то, что нужно вручную прописывать поля, да.. Они же реально должны быть одинаковыми, разве что в VM добавлена какая-то мишура для Вьюхи. Странно всё это. Ну не делай вообще вью-моделей, тащи Entity из EF-контекса прям во вью. Получишь пару раз по лбу, тогда всё поймёшь. Видимо трудный путь обучения ты выбрал, через тернии ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 13:07 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiqueНасколько я понимаю - мапперу все равно нужно задавать правила? Если так - то проще заюзать свой, ИМХО. Просто вью-модели понимаются не верно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 13:59 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttMonochromatiqueНасколько я понимаю - мапперу все равно нужно задавать правила? Если так - то проще заюзать свой, ИМХО. Просто вью-модели понимаются не верно. В WPF/SL/WP как-то понималось, а вот в ASP MVC - не понимается, ну да. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 15:19 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttЭтого не нужно. А когда вдруг становится нужно, похоже пора заниматься рефакторингом. Вью-модели для ASP.NET MVC должны быть максимально тупые. Не понимаю. Добавили в DBEntity еще одно поле. Также добавили его во вью-модель. Теперь надо обеспечить заполняемость этого поля во вью-модели. В случае единственного конструктора - понятно что-делать - это пара нажатий. В случае каких-то других способов создания - унылый отлов ошибок через runtime. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 15:23 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVostt Никогда не являлась. Не было такого. Я имею ввиду шаблоны и примеры из книг. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 15:24 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVostt тащи Entity из EF-контекса прям во вью. Получишь пару раз по лбу, тогда всё поймёшь. А что получишь то? На поверхности только "сложность" кейса - когда к DBEntity нужны какая-то доп. информация. А что еще? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 15:26 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiqueВ WPF/SL/WP как-то понималось, а вот в ASP MVC - не понимается, ну да. Вью-модель ≠ entity. При чём, «так набор полей же одинаааакавый» -- вообще какая-то глупость. В entity свойство — это колонка в хранилище, обычно в БД. Колонка! Во view model свойство — это информация для вывода или поле для ввода. И они как по семантике, так и по использованию совершенно разные. Детский и наивных способ смотреть на вещи плоско, недалеко и не дальновидно. Чаще всего как раз ViewModel не имеет ничего общего с Entity из EF. По крайне мере в мире разразобки ПО для людей. Если же вы делаете однобокое CRUD-приложение, аля редактор базы данных, то я даже не знаю как вам проблему свою решать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 15:28 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiqueВ случае каких-то других способов создания - унылый отлов ошибок через runtime. Бред какой-то. Добавил поле в базу -- это что автоматически означает, что появилось поле ввода во вью? Что за примитивную лабуду ты там делаешь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 15:29 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiqueА что получишь то? На поверхности только "сложность" кейса - когда к DBEntity нужны какая-то доп. информация. А что еще? Пока не получишь, не узнаешь Ладна ладна... Вью-модель отражает именно те данные ввода/вывода, которые нужны конкретно этой вью, а вью в свою очередь отражает именно ту бизнес-операцию, которая требуется. Или ты тупо выводишь свои Entity и редактируешь их со всеми полями что есть? Что ты вообще делаешь? Может ну его нафик, хернёй страдать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 15:31 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttаля редактор базы данных В том или ином виде - любое приложение - редактор базы данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 16:02 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVostt Добавил поле в базу -- это что автоматически означает, что появилось поле ввода во вью? В большинстве случаев - именно так. Я не в badoo работаю - мой кейс - унылый ентерпрайз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 16:03 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiquehVosttаля редактор базы данных В том или ином виде - любое приложение - редактор базы данных. Но коментс ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 16:04 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttИли ты тупо выводишь свои Entity и редактируешь их со всеми полями что есть? Ну зачастую, стараюсь, чтобы так и было. А что тебя так бомбит-то? Часть полей прячется, часть добавляется (для информации). Вот из-за этих добавляемых полей - и приходится делать выбор между трех огней. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 16:09 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiquehVosttИли ты тупо выводишь свои Entity и редактируешь их со всеми полями что есть? Ну зачастую, стараюсь, чтобы так и было. А что тебя так бомбит-то? Часть полей прячется, часть добавляется (для информации). Вот из-за этих добавляемых полей - и приходится делать выбор между трех огней. Для этого существует понятие 'мягкое связывание', чтобы отвязать Presentation Layer от Data Access Layer. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2015, 16:14 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronКому-то выше пора в баню дня на три, очистить тело и душу, так сказать.Да, давайте-ка уберем накал страстей и переход на личности немедленно. Это предупреждение! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 15:01 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
интересно как решался вопрос когда надо во вью вытащить 2 таблицы из ef. когда модель отделена от ef там понятно их "связь" происходит в контролере. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 01:36 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем Gинтересно как решался вопрос когда надо во вью вытащить 2 таблицы из ef. когда модель отделена от ef там понятно их "связь" происходит в контролере. JS на странице, дёргает 2 разных метода WebAPI и тащит данные для каждой таблицы, с фильтрами, сортировками, группировками, пейджингом. Вот так сейчас это решается, а не унылое запихивание во вью-модель кучи мусора, которую потом разгребать даже рука не поднимается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 02:00 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttАртем Gинтересно как решался вопрос когда надо во вью вытащить 2 таблицы из ef. когда модель отделена от ef там понятно их "связь" происходит в контролере. JS на странице, дёргает 2 разных метода WebAPI и тащит данные для каждой таблицы, с фильтрами, сортировками, группировками, пейджингом. Вот так сейчас это решается, а не унылое запихивание во вью-модель кучи мусора, которую потом разгребать даже рука не поднимается. Ты сам-то придерживаешься своих же советов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 08:24 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем Gинтересно как решался вопрос когда надо во вью вытащить 2 таблицы из ef. когда модель отделена от ef там понятно их "связь" происходит в контролере. Если надо вывести что-то, что не относится к VM - используй ViewBag. Уж всяко проще, чем срываться в WebApi c яваскриптом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 08:26 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttJS на странице, дёргает 2 разных метода WebAPI и тащит данные для каждой таблицы, с фильтрами, сортировками, группировками, пейджингом. Вот так сейчас это решается, а не унылое запихивание во вью-модель кучи мусора, которую потом разгребать даже рука не поднимается. вот я б не стал бы категорично говорить, конкретный случай надо рассматривать + имхо дело вкуса никто не скажет что вот так правильно и только так. MonochromatiqueЕсли надо вывести что-то, что не относится к VM - используй ViewBag. vm это уже представление и я не понимаю почему ж оно не относится к нему. вы ж не домен прокидываете в представление или даже не энтити, если модель простая то конечно оно подойдет. я видел проект кищащий ViewBag и в одном экшне где то устанавливалось и потом выплевывалось в какой то паршил вью, это было ужас тихий, да и тестировать эту байду забавно - надо знать что там где то есть не типизированный ViewBag..я понимаю что там ящик пива и вечер решают вопрос, но так и печень можно посадить) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 09:19 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiquehVosttпропущено... JS на странице, дёргает 2 разных метода WebAPI и тащит данные для каждой таблицы, с фильтрами, сортировками, группировками, пейджингом. Вот так сейчас это решается, а не унылое запихивание во вью-модель кучи мусора, которую потом разгребать даже рука не поднимается. Ты сам-то придерживаешься своих же советов?нормальный совет... Есть у тебя на странице два календаря: дата прямого перелета, дата обратного, - как при их пролистывании предлагаешь подтягивать информацию о квотах и отображать в ячейках дней? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 09:27 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
handmadeFromRuвот я б не стал бы категорично говорить, конкретный случай надо рассматривать + имхо дело вкуса никто не скажет что вот так правильно и только так. ну незнай. чувак говорит про 2 таблицы, типа 2 разные таблицы, 2 разные модели. значит они слабо связаны. можно конечно затолкать в одно вьюху, но что делать, если понадобится обновить только одну? щас ведь так веб устроен, за постбеки с обновлением всей страницы чуть ли не морду бьют. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 17:04 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Monochromatiqueиспользуй ViewBag расстрелять! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 17:05 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttMonochromatiqueиспользуй ViewBag расстрелять! Ах так... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 17:17 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttMonochromatiqueиспользуй ViewBag расстрелять! hVosttА в чём ты видишь проблему? Я проблемы не вижу. Вьюбэг универсален. Но никто не заставляет, можешь во вью-модель впихнуть. И нашим и вашим за рупь спляшем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 17:22 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiqueИ нашим и вашим за рупь спляшем? это не имеет значения, за использование вьюбэга -- расстрел, ето закон! а так да, если есть молоток, почему бы и не выстрелить им в ногу? это нормально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 17:30 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiqueАртем Gинтересно как решался вопрос когда надо во вью вытащить 2 таблицы из ef. когда модель отделена от ef там понятно их "связь" происходит в контролере. Если надо вывести что-то, что не относится к VM - используй ViewBag. Уж всяко проще, чем срываться в WebApi c яваскриптом. Можете подилиться примером на примере 2х EF таблиц: 1) OrderHeader 2) OrderDetails. Задача: Нужно вывести обе в одной вьюхе. Хотелось бы увидеть что в моделе и контролере... Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 20:07 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем GMonochromatiqueпропущено... Если надо вывести что-то, что не относится к VM - используй ViewBag. Уж всяко проще, чем срываться в WebApi c яваскриптом. Можете подилиться примером на примере 2х EF таблиц: 1) OrderHeader 2) OrderDetails. Задача: Нужно вывести обе в одной вьюхе. Хотелось бы увидеть что в моделе и контролере... Заранее спасибо. O_O Да уж в этом от примере Бог хотел и нам велел заюзать orderVM ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 20:16 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiqueАртем Gпропущено... Можете подилиться примером на примере 2х EF таблиц: 1) OrderHeader 2) OrderDetails. Задача: Нужно вывести обе в одной вьюхе. Хотелось бы увидеть что в моделе и контролере... Заранее спасибо. O_O Да уж в этом от примере Бог хотел и нам велел заюзать orderVM Ну так да, вы тут о другом спорите? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 20:18 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем Gвы тут о другом спорите? Ты внимания не обращай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 20:24 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем GХотелось бы увидеть что в моделе и контролере... Код: c# 1. 2. 3. 4. 5. и в чём проблемы-то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 20:46 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем G, или другой путь, предпочтительнее: Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. и не надо пихать во вью-модель две модели, каждая само по себе. и всё в одном запросе. разделяй блин, и влавствуй, слыхал о таком? сам Юлий Цезарь о таком говорил! это ещё до всяких сишарпов, прям как знал, что вопросы появятся ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2015, 20:52 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttну незнай. чувак говорит про 2 таблицы, типа 2 разные таблицы, 2 разные модели. значит они слабо связаны. можно конечно затолкать в одно вьюху, но что делать, если понадобится обновить только одну? щас ведь так веб устроен, за постбеки с обновлением всей страницы чуть ли не морду бьют. согласен что надо с аяксом в твоем примере. но я хз мож лишнюю работу делаю, первый рендеринг стараюсь делать средствами асп, а потом обновление аяксом если надо, но конечно все зависит от задачи, можно и тому же ангуляру дать порисовать) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 09:10 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttАртем GХотелось бы увидеть что в моделе и контролере... Код: c# 1. 2. 3. 4. 5. и в чём проблемы-то?Из-за обилия готовых паттернов, которые постоянно навязываются различными евангелистами, люди перестали иметь собственное мнение, основанное на базовых принципах ООП. Вот тебе типичный пример, а ты не верил. :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 10:15 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Алексей К, что интересно - есть шапкаЗаказа, ДеталиЗаказа, а самого Заказа нет :) ишаку ясно, что никакая шапка или никакие детали никакой вьюмодель не могут иметь, так как их без Заказ просто нет а вот Заказу положено иметь вьюмоделей (представлений) столько сколько есть потребность, так как Заказ только и является модельным примитивом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 12:43 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
никакие это не паттерны, а лабуда голимая, профанация ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 12:44 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
все слова уже испоганили, каждое УГ теперь называется "модель", тьььфу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 12:46 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Алексей КИз-за обилия готовых паттернов, которые постоянно навязываются различными евангелистами, люди перестали иметь собственное мнение, основанное на базовых принципах ООП. Вот тебе типичный пример, а ты не верил. :-) Это как раз тебе пример того, как человек ищет готовые решения, обучается, двигается вперёд. А ты всё топчешься на одном месте со своими убеждениями. А когда заболеешь, ходи лучше к знахаркам, а не к дипломированным врачам, чо они умных из себя строют, начитались книжек, далдоны, понимаешь. Ты старческим маразмом не заболел случайно? )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 13:18 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
ViPRosвсе слова уже испоганили, каждое УГ теперь называется "модель", тьььфу Вообще-то вью-модель :) Правильнее было бы говорить View DTO. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 13:21 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttАлексей КИз-за обилия готовых паттернов, которые постоянно навязываются различными евангелистами, люди перестали иметь собственное мнение, основанное на базовых принципах ООП. Вот тебе типичный пример, а ты не верил. :-) Это как раз тебе пример того, как человек ищет готовые решенияВ поисках готовых решений люди разучились писать программы. Эта проблема, как мне показалось, началась со времён Delphi, девиз которого: "где мне взять готовый компонентов", в котором разработка собственных компонентов удел избранных. hVostt, обучается, двигается вперёд.Это движение назад. hVosttА когда заболеешь, ходи лучше к знахаркам, а не к дипломированным врачам, чо они умных из себя строют, начитались книжек, далдоны, понимаешь. Давно не встречал качественных статей, из которых можно извлечь что-то новое и полезное. hVosttТы старческим маразмом не заболел случайно? ))Не знаю, со стороны виднее. :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 14:09 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Алексей КДавно не встречал качественных статей, из которых можно извлечь что-то новое и полезное.А чем интересуешься? Какими направлениями, практиками, подходами? Я вот регулярно натыкаюсь на полезные статьи :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 15:27 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAАлексей КДавно не встречал качественных статей, из которых можно извлечь что-то новое и полезное.А чем интересуешься? Какими направлениями, практиками, подходами? Я вот регулярно натыкаюсь на полезные статьи :) Тогда вот почитай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 15:37 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Алексей КВ поисках готовых решений люди разучились писать программы. Эта проблема, как мне показалось, началась со времён Delphi, девиз которого: "где мне взять готовый компонентов", в котором разработка собственных компонентов удел избранных. И какие же конкретно люди разучились писать программы? Ты знаешь таких? Которые раньше умели, а потом разучились? Сколько их? Кто они? Чем они щас занимаются, раз не пишут программы? Давай обсудим это. Как можно было шаблон проектирования спутать с компонентом? Это первое. Второе, изначально программирование пропагандирует идею: сделай один раз, используй много раз. Ты что же, предлагаешь отказаться от этой тупой идеи, ведь писать всегда всё с нуля, забив на компоненты, на практики и шаблоны проектирования ээ.. интересней? Платят больше? Что? Почему? Твой удел каждый день изобретать велосипеды? Сколько читаю твоё бесконечное брюзжание, но ни сути, ни смысла не вижу. Ты чем-то явно недоволен. А чем конкретно, не ясно. Может тебе просто найти собутыльника, напиться и излить ему душу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 15:57 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Алексей КДавно не встречал качественных статей, из которых можно извлечь что-то новое и полезное. А ты попробуй книжку купить. Я вот приобрёл недавно книжку http://www.piter.com/product?product_id=39684273 Сергея Теплякова. Очень толковая книга, годная. И другие книги периодически покупаю в эл. виде, многие на английском. А ты где ищешь статьи? Уж не говори, что на хабре, нахалявку? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 16:01 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Алексей, может проблема в этом: автор Большинство разработчиков ПО склоняются к мысли, что паттерны проектиро- вания — вещь интересная, но далеко не всегда полезная. Почему так вышло? Когда молодой разработчик сталкивается с новым инструментом, он изо всех сил старается воспользоваться им по максимуму. В результате инструмент про- ходит определенные стадии развития, которые для паттернов проектирования выглядят так. 1. Ух ты, ух ты, ух ты! Я узнал, что такое паттерны! Класс! Когда и где я смогу ими воспользоваться? 2. Ух ты! Я отрефакторил1 старый код и вместо десяти строк кода воспользовался семью паттернами! Вот как здорово! 3. Ух ты. Ну, паттерны — это классная штука, но через пару месяцев сделанный мной рефакторинг не кажется таким уж полезным. Что-то я и сам начал путать- ся со всеми этими абстрактными фасадированными декораторами, завернуты- ми в синглтон. 4. Паттерны — это хорошо, но нужно отталкиваться не от них, а от решаемой за- дачи и, уже исходя из проблемы, выбирать подходящие решения. Паттерны — хо- рошо, но своя голова лучше! Из книги про паттерны программирования. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 16:15 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttАлексей, может проблема в этом: авторБольшинство разработчиков ПО склоняются к мысли, что паттерны проектиро- вания — вещь интересная, но далеко не всегда полезная. Почему так вышло? Когда молодой разработчик сталкивается с новым инструментом, он изо всех сил старается воспользоваться им по максимуму. В результате инструмент про- ходит определенные стадии развития, которые для паттернов проектирования выглядят так. 1. Ух ты, ух ты, ух ты! Я узнал, что такое паттерны! Класс! Когда и где я смогу ими воспользоваться? 2. Ух ты! Я отрефакторил1 старый код и вместо десяти строк кода воспользовался семью паттернами! Вот как здорово! 3. Ух ты. Ну, паттерны — это классная штука, но через пару месяцев сделанный мной рефакторинг не кажется таким уж полезным. Что-то я и сам начал путать- ся со всеми этими абстрактными фасадированными декораторами, завернуты- ми в синглтон. 4. Паттерны — это хорошо, но нужно отталкиваться не от них, а от решаемой за- дачи и, уже исходя из проблемы, выбирать подходящие решения. Паттерны — хо- рошо, но своя голова лучше! Из книги про паттерны программирования. Ты сейчас на какой стадии находишься? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 16:17 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttАлексей КДавно не встречал качественных статей, из которых можно извлечь что-то новое и полезное. А ты попробуй книжку купить. Я вот приобрёл недавно книжку http://www.piter.com/product?product_id=39684273 Сергея Теплякова. Очень толковая книга, годная. И другие книги периодически покупаю в эл. виде, многие на английском. А ты где ищешь статьи? Уж не говори, что на хабре, нахалявку? Ну и что тут такого? Пишет нормально, но для меня ничего нового. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 17:00 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttАлексей, может проблема в этом: авторБольшинство разработчиков ПО склоняются к мысли, что паттерны проектиро- вания — вещь интересная, но далеко не всегда полезная. Почему так вышло? Когда молодой разработчик сталкивается с новым инструментом, он изо всех сил старается воспользоваться им по максимуму. В результате инструмент про- ходит определенные стадии развития, которые для паттернов проектирования выглядят так. 1. Ух ты, ух ты, ух ты! Я узнал, что такое паттерны! Класс! Когда и где я смогу ими воспользоваться? 2. Ух ты! Я отрефакторил1 старый код и вместо десяти строк кода воспользовался семью паттернами! Вот как здорово! 3. Ух ты. Ну, паттерны — это классная штука, но через пару месяцев сделанный мной рефакторинг не кажется таким уж полезным. Что-то я и сам начал путать- ся со всеми этими абстрактными фасадированными декораторами, завернуты- ми в синглтон. 4. Паттерны — это хорошо, но нужно отталкиваться не от них, а от решаемой за- дачи и, уже исходя из проблемы, выбирать подходящие решения. Паттерны — хо- рошо, но своя голова лучше! Из книги про паттерны программирования.Ну я тебе про 4-й пункт и говорю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 17:02 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Алексей КНу я тебе про 4-й пункт и говорю. А hVostt пока где-то между 1-м м 3-м заблудился :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 17:12 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Алексей КНу я тебе про 4-й пункт и говорю. Так ты на 4-ом пункте похоже и застрял, ведь есть и продолжение ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 17:23 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronА hVostt пока где-то между 1-м м 3-м заблудился :) Ой, а чой-то ты вмешиваешься в чужой разговор? Или в своём глазу бревна уже не замечаем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 17:23 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronТы сейчас на какой стадии находишься? :) Я достиг просветления ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 17:24 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttAxeleronА hVostt пока где-то между 1-м м 3-м заблудился :) Ой, а чой-то ты вмешиваешься в чужой разговор? Или в своём глазу бревна уже не замечаем? Здесь не частный разговор, а публичное место (C hVostt)! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 17:25 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttAxeleronТы сейчас на какой стадии находишься? :) Я достиг просветления В смысле? Уже оклемался после вчерашнего злоупотребления? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 17:25 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronЗдесь не частный разговор, а публичное место (C hVostt)! Мда.. тяжёлый случай ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 17:49 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttAxeleronЗдесь не частный разговор, а публичное место (C hVostt)! Мда.. тяжёлый случай Аргементируй ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 17:52 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronВ смысле? Уже оклемался после вчерашнего злоупотребления? Сначала надо слетать в прошлое и злоупотребить, чтобы ответить на этот вопрос ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 17:52 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttAxeleronВ смысле? Уже оклемался после вчерашнего злоупотребления? Сначала надо слетать в прошлое и злоупотребить, чтобы ответить на этот вопрос Не знаю, по-моему вас с Аной колбасило не по-детски :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 17:53 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronАргементируй Ты ж вот вчера тока меня упрекал, что типа я вмешиваюсь в разговор, а сам на следующий день так же делаешь. Я-то свою позицию объяснил, а ты чего моей прикрываешься? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 17:55 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronНе знаю, по-моему вас с Аной колбасило не по-детски :) Типа запалили, что ты фигню городишь? ))) Ну да, ну да )))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 17:55 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttAxeleronНе знаю, по-моему вас с Аной колбасило не по-детски :) Типа запалили, что ты фигню городишь? ))) Ну да, ну да )))) Один раз всего - потом требовали признать, что один раз из 10 я сморозил чушь. А то что Ана 3 страницы перед этим морозил - это норма :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 17:58 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronОдин раз всего - потом требовали признать, что один раз из 10 я сморозил чушь. А то что Ана 3 страницы перед этим морозил - это норма :) Я вообще не понял о чём вы трепались, так что хз. Мне был интересен технический аспект, а там кот наплакал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 18:03 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttЯ вообще не понял о чём вы трепались, так что хз. Мне был интересен технический аспект, а там кот наплакал. Так я и говорю, что ты влез в наш разговор, так и не поняв о чем там речь. Просто вклинился с тем, почему медленно сайт грузится. Да ясен пень почему. Я был не совсем трезв, чтобы сразу объяснить почему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 18:05 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttМне был интересен технический аспект, а там кот наплакал. Технический аспект чего? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 18:05 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronТак я и говорю, что ты влез в наш разговор, так и не поняв о чем там речь. Просто вклинился с тем, почему медленно сайт грузится. Да ясен пень почему. Я был не совсем трезв, чтобы сразу объяснить почему. Да ты и сейчас не сможешь объяснить Вот кто бухой был оказывается, а ещё с больной головы на здоровую перекладываешь. Хорош, хорош... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 18:24 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronhVosttМне был интересен технический аспект, а там кот наплакал. Технический аспект чего? Технический аспект обсуждения. Я не знаю с какого перепугу ты решил, что знаешь о чём думают инвесторы, но наезд на сайт изначально был глупый, бестолковый, неумный, и не аргументированный. Ну а я надеялся на аргументацию, но получил какой-то лепет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 18:25 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttAxeleronТак я и говорю, что ты влез в наш разговор, так и не поняв о чем там речь. Просто вклинился с тем, почему медленно сайт грузится. Да ясен пень почему. Я был не совсем трезв, чтобы сразу объяснить почему. Да ты и сейчас не сможешь объяснить Вот кто бухой был оказывается, а ещё с больной головы на здоровую перекладываешь. Хорош, хорош... Сейчас могу - пока еще на работе, но не буду. Все равно не поймешь. У тебя одни паттерны в голове жеж! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 18:32 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttТехнический аспект обсуждения. Я не знаю с какого перепугу ты решил, что знаешь о чём думают инвесторы, но наезд на сайт изначально был глупый, бестолковый, неумный, и не аргументированный. Тише, тише, не буянь. Ты что инвестированием занимаешься, чтобы это утверждать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 18:33 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronСейчас могу - пока еще на работе, но не буду. Все равно не поймешь. У тебя одни паттерны в голове жеж! Какие-то жидкие отмазики... Только подтверждает твою необразованность :) AxeleronТише, тише, не буянь. Ты что инвестированием занимаешься, чтобы это утверждать? А надо ли заниматься инвестированием, чтобы понять твои очевидные заблуждения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 19:21 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttКакие-то жидкие отмазики... Только подтверждает твою необразованность :) Твои предположения - это твои же проблемы по Фрейду ))) hVosttА надо ли заниматься инвестированием, чтобы понять твои очевидные заблуждения? Какие именно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 22:07 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVostt, Вот ты ни фига абсолютно в сфере инвестирования не понимаешь. И зачем ты споришь? Ты думаешь, это тебя сделает теб умнее? А про сайть их - да, он говно. Или ты считаешь его образцом сайтостроения в РФ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 22:15 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVostt, и еще пойми одну важную вещь. Твои дезайн паттерны никому не нужны кроме тебя самого, если сайт, который ты разрабатываешь - УГ. Немного грубо, но правда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 22:21 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronТвои предположения - это твои же проблемы по Фрейду ))) Напомни мне, эт с какого момента твои детские отмазы стали моими проблемами? Я такого чот не помню. И дядьку Фрейда зачем приплёл? Умнее от этого всё равно не выглядишь AxeleronКакие именно? Твои заблуждения насчёт того, что твои антисимпатии к какому-то сайту говорят об уровне заинтересованности каких-то там инвесторов, которых ты в глаза не видел, и не увидишь в своей жизни никогда. Фантазёр ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 23:37 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVostt, Ты бредишь, иди спать - раз выпил :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 23:39 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronhVostt, Вот ты ни фига абсолютно в сфере инвестирования не понимаешь. И зачем ты споришь? Ты думаешь, это тебя сделает теб умнее? А про сайть их - да, он говно. Или ты считаешь его образцом сайтостроения в РФ? Я чёт до сих пор не вижу аргументов в пользу «говно». Ещё раз, либ ты тупая бландинка, публично оценивающая предметы по своему настроению, или даёшь вменяемую аргументацию, как разумный человек. AxeleronhVostt, и еще пойми одну важную вещь. Твои дезайн паттерны никому не нужны кроме тебя самого, если сайт, который ты разрабатываешь - УГ. Немного грубо, но правда. Ну и кто УГ-шность будет оценивать? Бландинка Axeleron? Нравится-ненравится, спи моя красавица ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 23:44 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronhVostt, Ты бредишь, иди спать - раз выпил :) Ясно, по существу в очередной раз ответить нечем. Всё понятно, чё. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 23:45 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttAxeleronhVostt, Вот ты ни фига абсолютно в сфере инвестирования не понимаешь. И зачем ты споришь? Ты думаешь, это тебя сделает теб умнее? А про сайть их - да, он говно. Или ты считаешь его образцом сайтостроения в РФ? Я чёт до сих пор не вижу аргументов в пользу «говно». Ещё раз, либ ты тупая бландинка, публично оценивающая предметы по своему настроению, или даёшь вменяемую аргументацию, как разумный человек. AxeleronhVostt, и еще пойми одну важную вещь. Твои дезайн паттерны никому не нужны кроме тебя самого, если сайт, который ты разрабатываешь - УГ. Немного грубо, но правда. Ну и кто УГ-шность будет оценивать? Бландинка Axeleron? Нравится-ненравится, спи моя красавица Сайт - говно, если ты этого не видишь, я тебе ничем не могу помочь. Иди изучай дезайн паттерны свои - может быть поможет быть ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 23:47 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVostt, и не тупи. Глупо выглядишь. Если для тебя из сайт - это эталон, я тебе очень сочувствую. Если ты не понимаешь элементарных вещей, например, как должен выглядеть корпоративный веб сайт. Наверное, ты коленные поделки только клепаешь, но в чем я то виноват? Сам виноват... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 23:49 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronСайт - говно, если ты этого не видишь, я тебе ничем не могу помочь. Не вижу. А ты действительно ничем не можешь помочь, по причине неспособности выдать хоть одну умную мысль кроме школярского "сайт - говно". Уныло как-то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 23:49 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttAxeleronСайт - говно, если ты этого не видишь, я тебе ничем не могу помочь. Не вижу. А ты действительно ничем не можешь помочь, по причине неспособности выдать хоть одну умную мысль кроме школярского "сайт - говно". Уныло как-то. См выше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 23:49 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronhVostt, и не тупи. Глупо выглядишь. Если для тебя из сайт - это эталон, я тебе очень сочувствую. Если ты не понимаешь элементарных вещей, например, как должен выглядеть корпоративный веб сайт. Наверное, ты коленные поделки только клепаешь, но в чем я то виноват? Сам виноват... У меня ощущение, что Незнайку с тебя писали. Лан, всё. Твой тупняй надоел, будь здоров! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 23:49 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttAxeleronhVostt, и не тупи. Глупо выглядишь. Если для тебя из сайт - это эталон, я тебе очень сочувствую. Если ты не понимаешь элементарных вещей, например, как должен выглядеть корпоративный веб сайт. Наверное, ты коленные поделки только клепаешь, но в чем я то виноват? Сам виноват... У меня ощущение, что Незнайку с тебя писали. Лан, всё. Твой тупняй надоел, будь здоров! Если ты туп и слеп, я не виноват. Если для тебя сайт Нанотех - это эталон корпоративного сайта, это твои проблемы, и ты просто не знаешь как это в мире делается. Живи в своем колхозе и наслаждайся запохом дезодоранта - запахом навоза, ведь другого ты не знаешь, увы... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 23:52 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronЕсли ты туп и слеп, я не виноват. Если для тебя сайт Нанотех - это эталон корпоративного сайта, это твои проблемы, и ты просто не знаешь как это в мире делается. Живи в своем колхозе и наслаждайся запохом дезодоранта - запахом навоза, ведь другого ты не знаешь, увы... блондиночка, успокойся уже, иди спать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 23:53 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttAxeleronЕсли ты туп и слеп, я не виноват. Если для тебя сайт Нанотех - это эталон корпоративного сайта, это твои проблемы, и ты просто не знаешь как это в мире делается. Живи в своем колхозе и наслаждайся запохом дезодоранта - запахом навоза, ведь другого ты не знаешь, увы... блондиночка, успокойся уже, иди спать. Блондинко - это ты, судя по твоим высказываниям и интелекту :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 23:57 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVostt, Успагойся уже, ну ноль ты в инвестировании и понимании как должен корпоративный сайт выглядеть. Что ты так завелся? Признай факт и спи спокойно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2015, 23:59 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
AxeleronhVostt, Успагойся уже, ну ноль ты в инвестировании и понимании как должен корпоративный сайт выглядеть. Что ты так завелся? Признай факт и спи спокойно. угу, ты главное не забудь обсудить это со своими подруженциями, когда пойдёшь на маникюр ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 00:02 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttAxeleronhVostt, Успагойся уже, ну ноль ты в инвестировании и понимании как должен корпоративный сайт выглядеть. Что ты так завелся? Признай факт и спи спокойно. угу, ты главное не забудь обсудить это со своими подруженциями, когда пойдёшь на маникюр Я маникюр не делаю, но ты знаешь что это и что такое педикюр - тоже. Так что иди спать, девчока, и не хнычь - раз по конкретике вопроса сказать нечего :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 00:07 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVostt, а то очень тупо выглядишь. Скучно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 00:07 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Axeleron, это ты че то уперся вот сайт сбера фиговый, но я инвестировал в баксовый кошелек сбера и в начале года снял 2 лимона как с куста, тут же добавил 6 из хеджа и купил квартиру сайт пытался мешать но не смог :):):) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 00:43 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
в инвестициях главное - уметь ждать :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 00:44 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
ViPRosв инвестициях главное - уметь ждать :) Тут речь о двух персонажах, которых я уважаю как ИТ специалистов (Аннушка и Хвостун), но которые упорото борются со мной по части понимания инвестиций :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 00:47 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
ViPRosвот сайт сбера фиговый, но я инвестировал в баксовый кошелек сбера и в начале года снял 2 лимона как с куста, тут же добавил 6 из хеджа и купил квартиру Небось в баксах держал спиртовал годами? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 00:48 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Axeleron, почему годами? ну 2 года лежали ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 01:15 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
бум говорить не лежали, а просто излишек от зп ежемесячно туда скидовал :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 01:17 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
ViPRosAxeleron, почему годами? ну 2 года лежали Уже не плохо. Но... Ты знал! :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 01:17 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
110 % чистой прибыли, как уж сбер противился их обналичить :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 01:18 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
я и счас знаю, но свободных денег мало, а на "мало" не люблю играть, слишком азарт большой становится ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 01:19 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
ViPRos110 % чистой прибыли, как уж сбер противился их обналичить :) Пичаль. Но обрублил же в итоге? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 01:19 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
ViPRosя и счас знаю, но свободных денег мало, а на "мало" не люблю играть, слишком азарт большой становится Нефть упадет, рубль упадет - вопрос пары месяцев. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 01:21 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Axeleron, все у ни выдрал до копейки вот в новая убийцу проджект манаджмент счас инвестируюсь, таааакую фигню сделаю! вощем на пенсии она меня должна кормить до смерти ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 01:26 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
ViPRos, ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 01:34 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
ViPRosвот в новая убийцу проджект манаджмент счас инвестируюсь, таааакую фигню сделаю! вощем на пенсии она меня должна кормить до смерти веб версия будет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 05:22 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVostt, веб всегда в планах, но пока никто эти планы не оплачивает думаю веб появится тогда, когда начну продавать публично ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 14:52 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
БД -> Domain -> DTO -> Model (-> js Model) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2015, 15:39 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Скажите пожалуйста вот читаю и сталкивался со следующим утверждением в mvc Для каждой вью нужно создать свою модель только с теми свойствами которые будут использоваться в данной вью Задача: во вью нужно получить список. Скафолдинг автоматически генерит от EF модели следующий контролер: View (db.Peoples.Tolist) Ок. Создаю в папке модели папку Peoples и в ней создаю Модель: Class ListModel: List <People> Далее в контроле List создаю вот эту запись dynamic model = new ListModel(); model = db.People.ToList; < --- ошибка выскакивает вот здесь View(model) Unable to cast object of type 'System.Collections.Generic.List`1[мойкласс]' to type '...'. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 15:22 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем G, 1. для чего Вы создали тип ListModel? Чтобы формально следовать утверждению, что "Для каждой вью нужно создать свою модель только с теми свойствами которые будут использоваться в данной вью"? Право, Вы погорячились :) 2. но если таки хотите использовать свой ListModel так как написано в коде, то надо бы определить в нём неявное преобразование из типа List<People> ( преобразование типов в .NET Framework ). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 16:25 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
[quot skyANA]Артем G, 1. для чего Вы создали тип ListModel? Чтобы формально следовать утверждению, что "Для каждой вью нужно создать свою модель только с теми свойствами которые будут использоваться в данной вью"? Право, Вы погорячились :) Принято :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 16:33 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем G, чисто из любопытсва: а о чём сайт? О различных народах? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 16:40 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем GОк. Создаю в папке модели папку Peoples и в ней создаю Модель: Class ListModel: List <People> не ок. List<People> уже отвечает необходимым требованиям. с другой стороны, вам скорее всего понадобится вью типа: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 17:35 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVostt, блин, я не прав Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 17:36 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем G, короче, в идеале суть такая: для каждого Вью -- своя модель. даже если тебе надо передать всего лишь коллекцию, лучше зафигачить модель, содержащую одно свойство -- коллекцию. будет потом очень удобно и просто добавить полей, чем все переделывать. называешь вью модели вот так: <Имя контроллера><Имя действия>ViewModel Для коллекций создаешь ещё специальное вью: <Имя элемента>ItemViewModel Коллекции передаешь по интерфейсам IReadOnlyCollection<> или IReadOnlyList<> Можешь следовать такому соглашению. Или придумай своё. Главное, чтобы соглашение соблюдалось. Тогда не надо будет отвлекаться и думать над тем, надо ли создавать модель, как назвать модель и т.п. Используя соглашения можно написать свои генераторы кода, что весьма удобно. Сопровождать удобно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 17:43 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANA2. но если таки хотите использовать свой ListModel так как написано в коде, то надо бы определить в нём неявное преобразование из типа List<People> ( преобразование типов в .NET Framework ). он просто хочет разобраться :) вообще, учитывая количество сложностей у новичков с MVC, я бы сказал, что архитектура ASP.NET MVC — мягко говоря не совершенна. не до конца понятна роль вью-моделей. это должно быть чистое DTO, или может обладать логикой? вообще-то может, как минимум может нести «на себе» валидацию.. ну программер может туда зафигачить кода, наследования, абстракций и прочего говна, которого я уже повидал достаточно — реально жесть. никакого понимания что такое вью-модели, какими они должны быть, как их называть, как их делать, и когда надо остановиться нет. всё ложится на плечи опыта программиста, его лени и его бредовых фантазий. вот так. и с контроллерами тоже всё не просто так. особенно новичков в ступор загоняет, что М (модель) это не вью-модели, это что-то другое, чего в ASP.NET MVC нет, и программер должен его туда добавать. от того М тупо проваливается куда-то в небытие, остаётся какой-то куцый репо или вовсе прямые обращения к БД через юзинг в контроллерах и получаем толстый тупой контроллер. тоже нет чёткого описания, как использовать контроллер, что такое Модель, где и откуда она должна браться и т.д. в архитектуре прослеживается намёк на то, что MVC заточен на работу с анемичной моделью, но как? где? чего делать? для новичков непонятно. более того, нифига не новички, а даже мастадонты такого умудряются нафигарить, что волосы дыбом. это писец. как это сопровождать? как с этим работать? как это тестировать? ну а чо, реально, архитектура неудачная я считаю. идея крутая, реализация так себе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 17:55 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttну а чо, реально, архитектура неудачная я считаю. идея крутая, реализация так себе это типа такая шутка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 18:34 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
kmawhVosttну а чо, реально, архитектура неудачная я считаю. идея крутая, реализация так себе это типа такая шутка? нет, не шутка. факт. хорошая качественная архитектура означает следующее: ты берёшь её и решаешь непосредственно свои задачи. но в данном случае всё несколько иначе. куда не ткнись — вопросы. конечно же, опытный программист уже давно всё для себя решил, выработал свою технику поверх этой архитектуры, но и он ответить новичку не сможет на все вопросы, по сути ему придётся вникать в детали задачи и всё сведётся к: ну-ка отойди, дай-ка я сам. это говорит о плохой, неудачной реализации архитектуры. дающей больше вопросов, чем ответов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 18:45 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVostt, Огромное спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 18:47 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAАртем G, чисто из любопытсва: а о чём сайт? О различных народах? Да нет конечно :) просто пример с people. Сайт нужен по закрытию месяца для бухгалтерии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 18:52 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
А еще вопросец. Незнаю насколько он в тему. По поводу транзакций для приложения в котором будут работать более 1го человека. Есть ли смысл их использовать на чтение? Если смысл использовать когда изменение только в 1 таблице? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 19:04 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttskyANA2. но если таки хотите использовать свой ListModel так как написано в коде, то надо бы определить в нём неявное преобразование из типа List<People> ( преобразование типов в .NET Framework ). он просто хочет разобраться :) вообще, учитывая количество сложностей у новичков с MVC, я бы сказал, что архитектура ASP.NET MVC — мягко говоря не совершенна. не до конца понятна роль вью-моделей. это должно быть чистое DTO, или может обладать логикой? вообще-то может, как минимум может нести «на себе» валидацию.. ну программер может туда зафигачить кода, наследования, абстракций и прочего говна, которого я уже повидал достаточно — реально жесть. никакого понимания что такое вью-модели, какими они должны быть, как их называть, как их делать, и когда надо остановиться нет. всё ложится на плечи опыта программиста, его лени и его бредовых фантазий. вот так. и с контроллерами тоже всё не просто так. особенно новичков в ступор загоняет, что М (модель) это не вью-модели, это что-то другое, чего в ASP.NET MVC нет, и программер должен его туда добавать. от того М тупо проваливается куда-то в небытие, остаётся какой-то куцый репо или вовсе прямые обращения к БД через юзинг в контроллерах и получаем толстый тупой контроллер. тоже нет чёткого описания, как использовать контроллер, что такое Модель, где и откуда она должна браться и т.д. в архитектуре прослеживается намёк на то, что MVC заточен на работу с анемичной моделью, но как? где? чего делать? для новичков непонятно. более того, нифига не новички, а даже мастадонты такого умудряются нафигарить, что волосы дыбом. это писец. как это сопровождать? как с этим работать? как это тестировать? ну а чо, реально, архитектура неудачная я считаю. идея крутая, реализация так себе. растешь прямо на глазах :) приятно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 19:11 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttАртем G, <Имя элемента>ItemViewModel А как правильно оформить эту модель? унаследовать от той что в базе? Задублировать свойства? Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 19:24 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем GhVosttАртем G, <Имя элемента>ItemViewModel А как правильно оформить эту модель? унаследовать от той что в базе? Задублировать свойства? Заранее спасибо. нет, ни в коем случае. в идеале, опять же, вью-модели должны быть stand alone, т.е. ни от чего ни наследоваться, и ни от чего не зависеть. это тупорылый класс для передачи данных во вью. рассматривай это как типизированный способ доставки данных во вью вместо ViewBag, не более того. многие (видел и часто), начинают стряпать иерархию, типа базовая вью-модель, фабрики вью-моделей и прочее ушлёпство. не совершай таких ошибок. вью-модель это класс, который гуляет сам по себе, от контроллера во вью. всё. никто о нём больше не знает, и знать не должен. почему так? просто ограждаю тебя от большого количества шишек, если хочешь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 19:35 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
ViPRosрастешь прямо на глазах :) приятно да сам фигею :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 19:35 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttViPRosрастешь прямо на глазах :) приятно да сам фигею :) у тебя критическая масса набралась, начался процесс перехода количества в качество ты еще будешь от себя офигевать - типа блин я этому не учился, но ЗНАЮ!!! и ЗНАЮ окончательно и бесповоротно!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 19:41 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
ViPRosу тебя критическая масса набралась, начался процесс перехода количества в качество ты еще будешь от себя офигевать - типа блин я этому не учился, но ЗНАЮ!!! и ЗНАЮ окончательно и бесповоротно!!! надеюсь, нет :) мне нравится познавать и двигаться далее вперёд, ощущая это движение мозжечком. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 20:02 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Код: vbnet 1. 2. А в Create нужно указывать EF модель или PeopleViewModel? Код: vbnet 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 20:31 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем GА в Create нужно указывать EF модель или PeopleViewModel? PeopleViewModel чтобы перенести данные из/в модель EF, используй AutoMapper ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 20:46 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttАртем GА в Create нужно указывать EF модель или PeopleViewModel? PeopleViewModel чтобы перенести данные из/в модель EF, используй AutoMapper Руки не доходят разобраться в устанавливаемых по умолчанию Nugets Про AutoMapper слышал но не понимал его смысла ... вот и прешла его очередь. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 21:13 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем GА еще вопросец. Незнаю насколько он в тему. По поводу транзакций для приложения в котором будут работать более 1го человека. Есть ли смысл их использовать на чтение? Если смысл использовать когда изменение только в 1 таблице?Транзакция на чтение - это Вы о чём? Может речь о блокировках? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 21:32 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем GskyANAАртем G, чисто из любопытсва: а о чём сайт? О различных народах? Да нет конечно :) просто пример с people. Сайт нужен по закрытию месяца для бухгалтерии.People переводится как люди. Peoples - народы. Таки о чём Ваш пример? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 21:34 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAPeople переводится как люди. Peoples - народы. Таки о чём Ваш пример? :) народная бухгалтерия ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 21:35 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttskyANAPeople переводится как люди. Peoples - народы. Таки о чём Ваш пример? :) народная бухгалтерия Тестовое задание для сюда :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 21:40 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAТестовое задание для сюда :) NoSQL (MongoDB, CouchDb, Redis, Memcached, Cassandra) чёта мало так, хде равен? негодую! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 22:08 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
[quot skyANA]Артем Gпропущено... People переводится как люди. Peoples - народы. Таки о чём Ваш пример? :) Как мы знаем английские слова не одназначны people в значение люди уже во множественом числе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 22:15 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
вот тут нашел про Automapper на примере CRUD операций. может кому еще полезно будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 22:19 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем GКак мы знаем английские слова не одназначны people в значение люди уже во множественом числе.Таки о каком значении речь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 22:35 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAАртем GКак мы знаем английские слова не одназначны people в значение люди уже во множественом числе.Таки о каком значении речь? не скажу ) PS. мдя, вроде бы вот счастье ... AutoMapper, но не все так просто в той части где нужно проигнорировать свойства ( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 01:47 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем Gвроде бы вот счастье ... AutoMapper не ищите серебряных пуль. большого профита от AutoMapper вы не поимеете, DTO - это, как правило, более развесистые структуры, по сравнению в Entity - простого взаимооднозначного соответствия между ними нет. в свою очередь, ViewModel - это некоторая композиция DTO + еще всякие дополнительные свойства, так что тут еще одна трансформация. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 07:11 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
kmawбольшого профита от AutoMapper вы не поимеете как раз таки смысл в автомаппере в поимении большого профита, иначе он не нужен нафиг. просто конфигурации для наполнения моделей могут быть конскими. однако можно использовать проекции, а это мощь в квадрате — чистейший профит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 07:54 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttАртем Gпропущено... А как правильно оформить эту модель? унаследовать от той что в базе? Задублировать свойства? Заранее спасибо. нет, ни в коем случае. в идеале, опять же, вью-модели должны быть stand alone, т.е. ни от чего ни наследоваться, и ни от чего не зависеть. это тупорылый класс для передачи данных во вью. Вопрос с моделями для каждой вью как бы и не возникал ни когда. Всегда понимал что это правильно. Но вопрос почему нельзя наследовать от ef модели до сих пор открыт. Почему так делать не правильно? в чем зло? :) Вроде получается быстрее же ... не нужно копировать свойства и их атрибуты. Унаследовал + добавил дополнительных свойств. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 11:37 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAАртем GА еще вопросец. Незнаю насколько он в тему. По поводу транзакций для приложения в котором будут работать более 1го человека. Есть ли смысл их использовать на чтение? Если смысл использовать когда изменение только в 1 таблице?Транзакция на чтение - это Вы о чём? Может речь о блокировках? Да о них. тема раскрыта как то слабо. или я не нашел приличных примеров. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 11:39 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
И еще созрел 1 вопрос. Хорошей пратикой будет создание CreateMap в каждом ActionResult или создать отдельно класс в App_Start где это единожды сконфигурируется? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 11:47 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем GНо вопрос почему нельзя наследовать от ef модели до сих пор открыт. У этих классов разные задачи, разная ответственность, разное применение. Артем GПочему так делать не правильно? в чем зло? :) Ну как бы тебе объяснить... Объясни, в чём зло разливать суп совковой лопатой, а копать грядки половником. Артем GВроде получается быстрее же ... не нужно копировать свойства и их атрибуты. «Быстрее» получается только в начале разработки, затем это стремительно перерастает в геморрой. Ты хочешь сэкономить? Создавай отдельные вью-модели, не связанные физически с классами EF. Артем GУнаследовал + добавил дополнительных свойств. Там не только свойства, но ещё и атрибуты мета-модели, а также ты получаешь жесткую зависимость от классов EF. Скоро потребуется что-то менять и дорабатывать, и в случае с разделением, ты чуть поправил маппинг и проекцию, вместо некомпилируемого и нерабочего кода. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 12:33 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Самая главная фраза - эта:hVostt«Быстрее» получается только в начале разработки, затем это стремительно перерастает в геморрой. Так что есть два пути: - поверить на слово профессионалам, потратить больше времени сейчас и на порядки больше сэкономить времени потом - пройти самому по этим граблям и в итоге все равно придти к первому пункту самостоятельно Это касается, в общем-то работы с любыми паттернами. Просто второй путь обиднее ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 13:27 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем GskyANAпропущено... Транзакция на чтение - это Вы о чём? Может речь о блокировках? Да о них. тема раскрыта как то слабо. или я не нашел приличных примеров.Конечно имеет. Writer же должен знать, что кто-то в данный момент ещё читает данные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 15:02 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAАртем Gпропущено... Да о них. тема раскрыта как то слабо. или я не нашел приличных примеров.Конечно имеет. Writer же должен знать, что кто-то в данный момент ещё читает данные.Но для Вас это уже на уровне СУБД реализовали. Ведь у Вас же SQL Server? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 15:05 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем GhVosttпропущено... нет, ни в коем случае. в идеале, опять же, вью-модели должны быть stand alone, т.е. ни от чего ни наследоваться, и ни от чего не зависеть. это тупорылый класс для передачи данных во вью. Вопрос с моделями для каждой вью как бы и не возникал ни когда. Всегда понимал что это правильно. Но вопрос почему нельзя наследовать от ef модели до сих пор открыт. Почему так делать не правильно? в чем зло? :) Вроде получается быстрее же ... не нужно копировать свойства и их атрибуты. Унаследовал + добавил дополнительных свойств. ничерта все не так модель одна, а вью (представление модели) много то что вы называете моделью не модель, а внутренные структуры представления, которые воще то должны быть полностью скрыты ото всех, кроме контроллера ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 15:38 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Сорри за долгую дисскусию. На грабли наступать не хочу. Спасибо огромное. Есть несколько вопросов по построению ViewModel. Все они касаются правильности работы с моделью Вот пример ниже с выпадающим списком. Насколько правильно сделано выделенное красным? PS. Выделить жирным красным не получилось. Указал стрелочками. ModelView Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Controller Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 17:02 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем G, SelectList создавай исключительно in View. На вход к нему может поступить любая коллекция. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 17:19 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiqueАртем G, SelectList создавай исключительно in View. На вход к нему может поступить любая коллекция. да пофигу вообще... SelectList так-то вообще УГ. сколько сталкивался с ним, никогда не нравился, туповатая коллекцию, вбивающая новичков в ступор. ни кому не оставляет шансов пройти лёгкой походкой мимо. граната замедленного действия пля. вот уж кто-то стебанулся так стебанулся. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 17:31 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttMonochromatiqueАртем G, SelectList создавай исключительно in View. На вход к нему может поступить любая коллекция. да пофигу вообще... Безотносительно остального ())))))))))) не пофигу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 17:32 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем G, ну фиговенько, но для начала сойдёт. норм. передал же данные для выпадашки? передал. с задачей справился. не заморачивайся на этом. а вот dynamic зачем ты применил, я конечно не понял. защему так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 17:33 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем GPS. Выделить жирным красным не получилось. Как мне оформить свое сообщение? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 17:36 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttАртем G, норм. передал же данные для выпадашки? передал. А выбранное значение? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 17:39 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
ViPRosАртем Gпропущено... Вопрос с моделями для каждой вью как бы и не возникал ни когда. Всегда понимал что это правильно. Но вопрос почему нельзя наследовать от ef модели до сих пор открыт. Почему так делать не правильно? в чем зло? :) Вроде получается быстрее же ... не нужно копировать свойства и их атрибуты. Унаследовал + добавил дополнительных свойств. ничерта все не так модель одна, а вью (представление модели) много то что вы называете моделью не модель, а внутренные структуры представления, которые воще то должны быть полностью скрыты ото всех, кроме контроллера ну так ТС не утверждает обратного. он осторожно спрашивает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 17:42 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiquehVosttАртем G, норм. передал же данные для выпадашки? передал. А выбранное значение? а где оно по-твоему должно быть? в селект-листе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 17:42 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttMonochromatiqueпропущено... А выбранное значение? а где оно по-твоему должно быть? в селект-листе? Для тебя это сюрприз? Походу, не долго ты тусил около СелектЛиста)))))))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 17:45 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttMonochromatiqueпропущено... А выбранное значение? а где оно по-твоему должно быть? в селект-листе? Пока ты судорожно елозишь по гуглу - сообщаю - что после создания SelectList-а, присвоить ему выбранное значение несколько... Проблемно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 17:48 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Объясните мне, как человеку, что не использует Razor и хелперы, в чём смысл SelectList-а? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 18:05 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAОбъясните мне, как человеку, что не использует Razor и хелперы, в чём смысл SelectList-а? Ну... Вероятно в определение пары text/value. Иначе всё можно спрятать в хелпер ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 18:13 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAОбъясните мне, как человеку, что не использует Razor и хелперы, в чём смысл SelectList-а? назначение, лупить со стандартной для грабли скоростью прям по лобешникам, по ним одно из самых наитупейших изобретений в среде ASP.NET MVC / Razor ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 18:17 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiqueДля тебя это сюрприз? ну я бы не рекомендовал юзать селектлист, да и вообще стандартные контролы для дропдаунов... это печалька, но можно и поржать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 18:19 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttда и вообще стандартные контролы для дропдаунов... Ты хотел сказать - стандратные хелперы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 18:22 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiquehVosttда и вообще стандартные контролы для дропдаунов... Ты хотел сказать - стандратные хелперы? ну остальное как-то ещё приемлимо. решать можно. да и дропдаун после пары шишек тоже можно в строй. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 18:28 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiqueskyANAОбъясните мне, как человеку, что не использует Razor и хелперы, в чём смысл SelectList-а? Ну... Вероятно в определение пары text/value. Иначе всё можно спрятать в хелперИ на кой мне эти пары? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 18:29 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAMonochromatiqueпропущено... Ну... Вероятно в определение пары text/value. Иначе всё можно спрятать в хелперИ на кой мне эти пары? SelectList равно как и MultiSelectList используется для хелперов, которые генерят разметку для дропдаунов. Вопрос "на кой" еще остался? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 18:33 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiqueskyANAпропущено... И на кой мне эти пары? SelectList равно как и MultiSelectList используется для хелперов, которые генерят разметку для дропдаунов. Вопрос "на кой" еще остался?То есть SelectList равно как и MultiSelectList на фиг не нужен. Так я и думал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 18:34 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAMonochromatiqueпропущено... SelectList равно как и MultiSelectList используется для хелперов, которые генерят разметку для дропдаунов. Вопрос "на кой" еще остался?То есть SelectList равно как и MultiSelectList на фиг не нужен. Так я и думал. Ну если ты доходишь до конечного результата без них - то это как бы очевидно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 18:40 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiqueskyANAпропущено... То есть SelectList равно как и MultiSelectList на фиг не нужен. Так я и думал. Ну если ты доходишь до конечного результата без них - то это как бы очевидно.Повторю вопрос: Объясните мне, как человеку, что не использует Razor и хелперы , в чём смысл SelectList-а? :) То есть тебе должно было быть очевидно, что я дохожу "до конечного результата без них". А ты про пары какие-то начал затирать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 18:52 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAMonochromatiqueпропущено... Ну если ты доходишь до конечного результата без них - то это как бы очевидно.Повторю вопрос: Объясните мне, как человеку, что не использует Razor и хелперы , в чём смысл SelectList-а? :) То есть тебе должно было быть очевидно, что я дохожу "до конечного результата без них". А ты про пары какие-то начал затирать. Теперь у меня вопрос - а почему из тебя говно лезет? Я ж не знаю, почему ты не используешь SL, может не догоняешь чего-то, вот я объяснил. А ты начал черта включать. В следующий раз нахер пошлют - вот и все разговоры. Это для тебя не очевидно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 18:56 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiqueskyANAпропущено... Повторю вопрос: Объясните мне, как человеку, что не использует Razor и хелперы , в чём смысл SelectList-а? :) То есть тебе должно было быть очевидно, что я дохожу "до конечного результата без них". А ты про пары какие-то начал затирать. Теперь у меня вопрос - а почему из тебя говно лезет? Я ж не знаю, почему ты не используешь SL, может не догоняешь чего-то, вот я объяснил. А ты начал черта включать. В следующий раз нахер пошлют - вот и все разговоры. Это для тебя не очевидно?Извини, но говно полезло из тебя. Видимо просто ты не прочитал изначально, что я выше выделил болдом, и начал мне втирать про хелперы. А мог бы просто ответить, что вне Razor и хелперов, SelectList не имеет смысла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 19:00 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAИзвини, но говно полезло из тебя. Видимо просто ты не прочитал изначально, что я выше выделил болдом, и начал мне втирать про хелперы. А мог бы просто ответить, что вне Razor и хелперов, SelectList не имеет смысла. Не извиню. Кесарю - кесарево. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 19:06 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
MonochromatiqueskyANAИзвини, но говно полезло из тебя. Видимо просто ты не прочитал изначально, что я выше выделил болдом, и начал мне втирать про хелперы. А мог бы просто ответить, что вне Razor и хелперов, SelectList не имеет смысла. Не извиню. Кесарю - кесарево.Какой серъёзный молодой человек :) А что в сухом остатке? SelectList получается прибивает гвоздями вашу ViewModel к хелперам. Ничего конечно страшного, вряд-ли большинству понадобиться свой движок представления, со своей компонентной моделью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 19:16 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAMonochromatiqueпропущено... Ну если ты доходишь до конечного результата без них - то это как бы очевидно.Повторю вопрос: Объясните мне, как человеку, что не использует Razor и хелперы, в чём смысл SelectList-а? :) То есть тебе должно было быть очевидно, что я дохожу "до конечного результата без них". А ты про пары какие-то начал затирать. skyANA, а что используешь, и почему, если не секрет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 19:29 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
kmawskyANAпропущено... Повторю вопрос: Объясните мне, как человеку, что не использует Razor и хелперы, в чём смысл SelectList-а? :) То есть тебе должно было быть очевидно, что я дохожу "до конечного результата без них". А ты про пары какие-то начал затирать. skyANA, а что используешь, и почему, если не секрет? Присоединяюсь к вопросу. Почему SelectList в моем примере так потому что я в MVC около полугода + сейчас пишу первый не тестовый проект. В интернете на 100 примеров 1 best way. Приходиться собирать все по крупицам. Убивает просто тучу вермени. Если использовать Scaffolding то он генерит SelectList. Сейчас как бы вонуют вопроса: - как подтянуть словарь лучшим способом (вот оказалось что Select List не феншуй. учел. погуглю буду смотреть как делают другие) - как создавать организовывать вьюмодели для связей: один к одному, один ко многим, много ко многим. так же как в ef моделях? почему возникает 2ой вопрос так потому что видел в интернетах для связи один ко многим таблица деталей была создана как подкласс к классу основной таблицы, а не отдельно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 21:41 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttАртем G, ну фиговенько, но для начала сойдёт. норм. передал же данные для выпадашки? передал. с задачей справился. не заморачивайся на этом. а вот dynamic зачем ты применил, я конечно не понял. защему так? на динамик не обращайте внимания ... это просто пример предположу что вместо селект создается модель ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 21:53 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
kmawskyANAпропущено... Повторю вопрос: Объясните мне, как человеку, что не использует Razor и хелперы, в чём смысл SelectList-а? :) То есть тебе должно было быть очевидно, что я дохожу "до конечного результата без них". А ты про пары какие-то начал затирать. skyANA, а что используешь, и почему, если не секрет? StringTemplate view engine: Lightweight. No page classes are created. Fast. Templates are written to the Response Output stream. Cached. Templates are cached for a specified amount of time (when in release mode). Dynamic. Templates can be generated on the fly in code. Flexible. Templates can be nested to any level. In line with MVC principles. Promotes separation of UI and Business Logic. All data is created ahead of time, and passed down to the template. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 22:20 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Артем G- как создавать организовывать вьюмодели для связей: один к одному, один ко многим, много ко многим. так же как в ef моделях? почему возникает 2ой вопрос так потому что видел в интернетах для связи один ко многим таблица деталей была создана как подкласс к классу основной таблицы, а не отдельно.Какие ещё связи, какие таблицы? :) Думайте объектами, а не тем, как оно маппится на реляционную схему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 22:24 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAА что в сухом остатке? SelectList получается прибивает гвоздями вашу ViewModel к хелперам. Ну вообще ViewModel создаются исключительно для View, и ни для чего другого. И хелперы создаются исключительно для использования во View. Так что ничего дурного нет. С другой стороны, конечно, желательно ослаблять непосредственную связь с хелперами, но и рвать эту связь совсем тоже непродуктивно. В общем, проблемы никакой нет, завязаться на конкретные хелперы. В крупной разработке это неизбежность. Другое дело, если ты пилишь какие-то общие компоненты, которые будут юзаться в разных системах, библиотеки какие-то, фреймворки, киты... Ну там и совсем другие подходы к разработке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 08:19 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANALightweight. No page classes are created. Движок Разора тоже может работать таким образом. skyANAFast. Templates are written to the Response Output stream. Странное обоснование „Fast“ конечно, ну пишут сразу в вывод, Разор тоже так делает. skyANACached. Templates are cached for a specified amount of time (when in release mode). Разор вообще полностью построен на механизмах кеширования, кешируется всё. В том числе шаблоны компилируются и работают со скоростью кода, без синтаксического разбора вообще. skyANADynamic. Templates can be generated on the fly in code. Ценность этого сомнительна, и конечно сводит на нет кеширование. Ну и на Разоре можно генерить темлейты, ничего особенного. skyANAFlexible. Templates can be nested to any level. В Разоре тож самое, более того, они ещё могут наследоваться. skyANAIn line with MVC principles. Promotes separation of UI and Business Logic. All data is created ahead of time, and passed down to the template. Видна рука Капитана Очевидность :) В общем, выбирая между StringTemplate и Razor, я бы выбрал Razor. А последние тенденции в его развитии мне вообще по душе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 08:32 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttskyANAА что в сухом остатке? SelectList получается прибивает гвоздями вашу ViewModel к хелперам. Ну вообще ViewModel создаются исключительно для View, и ни для чего другого. И хелперы создаются исключительно для использования во View. Так что ничего дурного нет. С другой стороны, конечно, желательно ослаблять непосредственную связь с хелперами, но и рвать эту связь совсем тоже непродуктивно. В общем, проблемы никакой нет, завязаться на конкретные хелперы. В крупной разработке это неизбежность. Другое дело, если ты пилишь какие-то общие компоненты, которые будут юзаться в разных системах, библиотеки какие-то, фреймворки, киты... Ну там и совсем другие подходы к разработке.Мы пишем движок, что используется как нашими верстальщиками, так и нашими клиентами. Ни те, ни другие ничего особо не знают про C# и MVC :) Так же используем StringTemplate для шаблонов писем, 12 миллионов которых наши пользователи отправляют в месяц. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 09:00 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttskyANAFlexible. Templates can be nested to any level. В Разоре тож самое, более того, они ещё могут наследоваться.Пример кода можешь привести, как это будет выглядеть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 09:00 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAПример кода можешь привести, как это будет выглядеть? Код: html 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 09:10 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAМы пишем движок, что используется как нашими верстальщиками, так и нашими клиентами. Ни те, ни другие ничего особо не знают про C# и MVC :) Т.е. у вашего движка нет никакого синтаксиса? Верстальщики даже не знают, что пишут шаблоны для движка? Как, например, вставить значение из модели в шаблон без синтаксиса? Типа верстальщик разрабатывает шаблон письма: Код: html 1. А шаблонизатор такой умный, что догадывается, что вместо ИмяПользователя надо подставить значение :) Да ещё в нужном падеже! А числа? Ну как в шаблоне верстальщик скажет «у вас 1 пис ьмо , 5 сообщен ий и 2 нов ых подписчи ка »? В разоре это сделать как 2 пальца об стол, и не надо ничего специально в модели готовить, эти задачи можно решить в шаблоне. И многие другие. Я бы сказал, любые в принципе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 09:15 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAТак же используем StringTemplate для шаблонов писем, 12 миллионов которых наши пользователи отправляют в месяц. Ну ок. Я только хотел сказать, что если стоять перед таким выбором, то нет ни одной причины в выборе StringTemplate вместо Razor. Точнее я таких причин не знаю. Вот и всё, что я хотел сказать :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 09:17 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVostt, что ты так нервничаешь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 09:21 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttskyANAПример кода можешь привести, как это будет выглядеть? Код: html 1. 2. 3. Нет, это не про "Templates can be nested to any level". В StringTemplate так... Default.tpl Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Layout.tpl Код: html 1. 2. 3. Header.tpl Код: html 1. Footer.tpl Код: html 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 09:21 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAНет, это не про "Templates can be nested to any level". А я про наследование говорил. Вставить шаблон в шаблон очень просто, на любом уровне: @Html.Partial("OtherTemplate") боле того, можно не просто вставить какой-то шаблон, а целый результат действия @Html.Action("MyAction") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 09:25 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
ИзопропилhVostt, что ты так нервничаешь? Что!!? Тааак заметна!* Noooooooooooooooooooooooooooooo;;;;;......... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 09:26 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANA Код: html 1. Ну и не вижу разницы, не знают верстальщики язык C#, но им приходится знать язык StringTemplate, который рядом не валялся с C#. Есть разница, на каком количестве языков разговаривает команда, и с точки зрения банальной продуктивности, это количество желательно сокращать. Верстальщику без разницы: <$ MyValue $> или @Model.MyValue ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 09:29 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttskyANAНет, это не про "Templates can be nested to any level". А я про наследование говорил.А написано про то, что шаблон может быть вложен :) hVosttВставить шаблон в шаблон очень просто, на любом уровне: @Html.Partial("OtherTemplate")Вот тут уже начинается сложный для верстальщика и пользователя синтаксис. Особенно когда нужно передать модель, не тупо как model , а Код: html 1. 2. Плюс Html.Partial - это зависимость от System.Web.Mvc. Тестировать не удобно. Hello.tpl Код: html 1. hVosttболе того, можно не просто вставить какой-то шаблон, а целый результат действия @Html.Action("MyAction")А это на фиг не нужно :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 09:45 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttskyANA Код: html 1. Ну и не вижу разницы, не знают верстальщики язык C#, но им приходится знать язык StringTemplate, который рядом не валялся с C#.Ни верстальщику, ни пользователю C# на фиг не упёрся. А вот возможность использовать готовые компоненты + быстро создавать свои, да. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 09:48 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAПлюс Html.Partial - это зависимость от System.Web.Mvc. Тестировать не удобно. Да всё удобно, мы тестируем. skyANAА написано про то, что шаблон может быть вложен :) Ну он может быть вложен и может быть отнаследован. skyANAhVosttболе того, можно не просто вставить какой-то шаблон, а целый результат действия @Html.Action("MyAction")А это на фиг не нужно :) Не согласен. @Html.Action("SomeWidget") — вот здесь, например, верстальщику важно вставить этот виджет, а виджет это не голый шаблон, это логика+шаблон, на которые в этом месте верстальщку по барабану, ему надо вставить и всё. так что ты не прав :) или, например, вот так: @Html.Action("Feedback") — форма обратной связи, это шаблон и серверная логика вывода, более того, действие может вывести вообще разные данные в зависимости от прав пользователя, например. и очень просто, вставил вызов и пошёл дальше. мы этим часто пользуемся, очень удобно. и тестированию поддаётся как нельзя лучше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 10:05 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANA Код: html 1. 2. Какие-то магические строки. Плохо :) @Html.Partial("SomeSubTemplate", Model.Persona) кул! или вообще вот так: @Html.DisplayFor(p => p.Persona) и с верстальщиками проблем пока не возникало. синтаксис простой, программную C# логику никто не пишет в шаблонах, а необходимый для верстальщика минимум осилит даже обезьяна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 10:06 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAНи верстальщику, ни пользователю C# на фиг не упёрся. А вот возможность использовать готовые компоненты + быстро создавать свои, да. если пользователь может стряпать свои шаблоны, то тут придётся с тобой согласиться, ему Razor будет вреден. а для верстальщика параллельно. мы работаем с ними и никаких проблем не возникало ни разу. более того, некоторые освоили C# и пишут качественные темплейты и тесты под них. это круто. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 10:10 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttНе согласен. @Html.Action("SomeWidget") — вот здесь, например, верстальщику важно вставить этот виджет, а виджет это не голый шаблон, это логика+шаблон, на которые в этом месте верстальщку по барабану, ему надо вставить и всё. так что ты не прав :)Не нужно :) У нас CMS есть, где пользователь сам вставит нужный ему виджет (гаджет) мышкой и права настроит, если их есть для конкретного виджета (гаджета). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 10:10 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
skyANAНе нужно :) У нас CMS есть, где пользователь сам вставит нужный ему виджет (гаджет) мышкой и права настроит, если их есть для конкретного виджета (гаджета). ну ок, это уже топ левел. мы CMS-ок не пишем, нам это не нужно. хотя CMS-ок, которые используют Razor и именно такой подход — хватает, и никого пока это не напрягало ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 10:14 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Не стал создавать отдельную ветку, спрошу здесь. Какие данные нужно хранить во ViewModel-и, а какие лучше в ViewBag-е? К примеру, на странице отображения списка сущностей, в модели я храню только список. Все остальное - имя текущего пользователя, ссылку на его профиль, данные для хлебных крошек навигации, список связанных сущностей (наподобие "с этим товаром чаще всего покупают") - беру из ViewBag. На странице редактирования сущности - аналогично, в модели храню только поля формы. Насколько оправдан такой подход? Может, лучше и правильнее все данные, отображаемые на странице, держать в модели? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2015, 22:46 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
sysauxКакие данные нужно хранить во ViewModel-и, а какие лучше в ViewBag-е? ViewModel — 1 к 1 данные, которые нужно отображать во View и принимать обратно методом POST, т.е. не больше и не меньше. Лишние поля — плохо, потому что: 1) вводят в заблуждение программистов, которые будут сопровождать и поддерживать ПО; 2) мешают при юнит-тестировании и портят карту покрытия тестами (например, dotCover будет показывать, что эти поля не используются, а если используются, то.. где? почему?). Недостаток полей приводит к кривым костылям для извлечения данных ч/з ViewBag или бог знает ещё как. ViewBag — удобно и вполне легально использовать для: 1) данных для выпадающих списков (DropDown), например по соглашению: ViewBag.ИмяПоля_Data 2) данных для настройки вложенных PartialViews и Display/EditorTeplates, например, CSS-стили и атрибуты 3) обобщённых данных, использующихся в несвязанных View, например, сообщений, алертов, т.е. частей, которые могут использоваться на любых страницах и глупо эти данные пихать во все ViewModel. 4) другие крайне специфичные вещи, которые выходят за рамки Одно Действие → Одно или несколько Представлений. Использование ViewBag не даёт контроль типов, и делает невозможным проверку на этапе компиляции, отсутствие IntelliSense усложняет сопровождение и разработку, поэтому их надо использовать совместно с жёстко заданными соглашениями на уровне компонентов (контролов) и атрибутов, т.е. желательно за рамками прикладной логики. В целом же всегда надо отдавать предпочтение строго типизированным ViewModel-ям, при чём не желательно использовать одну ViewModel в разных Views, т.е. грубо говоря одному View должна соответствовать одна ViewModel, что даёт следующее соглашение по наименованию ViewModel: КонтроллерПредставлениеViewModel. Код: c# 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2015, 00:51 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
sysauxВсе остальное - имя текущего пользователя, ссылку на его профиль, данные для хлебных крошек навигации, список связанных сущностей (наподобие "с этим товаром чаще всего покупают") - беру из ViewBag. На странице редактирования сущности - аналогично, в модели храню только поля формы. Всё правильно, эти данные выходят за рамки конкретного действия контроллера. Но в таком случае надо оформлять это таким образом, чтобы было понятно какие данные лежат ViewBag-е (мы называем его багажником). Придумывайте строгие правила для таких ситуаций. Если на странице есть независимые от действия (точнее от его результата) части: блок логина и блок хлебных крошек, то кто заполняет эти данные? Есть два удобных подхода: 1) Данные заполняет глобальный фильтр и передаёт так: ViewBag.НаименованиеЧастичногоПредставленияModel, в Layout-е, вставляется так: @Html.Partial("НаименованиеЧастичногоПредставления", ViewBag.НаименованиеЧастичногоПредставленияModel) 2) (более корректный на мой взгляд и лишённый проблемы хранения и передачи данных через ViewBag) Вставлять независимые блоки в Layout-е вот так: @Html.Action("LoginWidget", "Account") , где действие LoginWidget контроллера Account возвращает частичное представление. Преимущества второго подхода очевидны: полный контроль типов, возможность полноценного юнит-тестирования, законченный независимый компонент, который может использовать в процессе вёрстки, как плейсхолдер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2015, 01:02 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttКакие данные нужно хранить во ViewModel-и, а какие лучше в ViewBag-е? ViewModel — 1 к 1 данные, которые нужно отображать во View и принимать обратно методом POST, т.е. не больше и не меньше. hVosttИспользование ViewBag не даёт контроль типов, и делает невозможным проверку на этапе компиляции, отсутствие IntelliSense усложняет сопровождение и разработку, поэтому их надо использовать совместно с жёстко заданными соглашениями на уровне компонентов (контролов) и атрибутов, т.е. желательно за рамками прикладной логики. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2015, 01:02 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
sysaux, ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2015, 01:06 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
Сорри, рано отправил. 1 цитата - то есть я все делал правильно))). 2 цитата - вот как раз отсутствие контроля типов и послужила причиной моего вопроса. Часто в процессе доработок в коде контроллера заносишь во ViewBag много данных, которые используешь потом в отображении. Затем, что-то удаляешь из отображения - и конечно, забываешь удалить занесение этих данных во ViewBag в коде контроллера. Чтобы не было такой каши в коде, что можно предпринять - только конвенция "считаем объекты занесенные в ViewBag в контроллере, и объекты из ViewBag используемые в отображении"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2015, 01:06 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
* "считаем количество объектов в контроллере и сравниваем с количеством в отображении" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2015, 01:08 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
sysauxЗатем, что-то удаляешь из отображения - и конечно, забываешь удалить занесение этих данных во ViewBag в коде контроллера. Чтобы не было такой каши в коде, что можно предпринять - только конвенция "считаем объекты занесенные в ViewBag в контроллере, и объекты из ViewBag используемые в отображении"? Ну незнаю, желательно избегать ViewBag, или программировать так, чтобы заведомо во ViewBag не попадали лишние неиспользуемые данные, которые легко можно упустить из виду, а также наоборот, чтобы требуемые данные попадали. Это можно сделать на уровне компонентов и атрибутов (фильтров). Т.е. в самих действиях контроллеров лучше вообще не запихивать в ViewBag ничего, иначе каша наступит неизбежно и никакие конвенции не помогут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2015, 02:47 |
|
||
|
Как половчее управляться с ViewModel-ями?
|
|||
|---|---|---|---|
|
#18+
hVosttНу незнаю, желательно избегать ViewBag, или программировать так, чтобы заведомо во ViewBag не попадали лишние неиспользуемые данные, которые легко можно упустить из виду, а также наоборот, чтобы требуемые данные попадали. Это можно сделать на уровне компонентов и атрибутов (фильтров). Т.е. в самих действиях контроллеров лучше вообще не запихивать в ViewBag ничего, иначе каша наступит неизбежно и никакие конвенции не помогут. А можно пример, как можно передать через атрибут или компонент (?) к примеру, наименование страницы, имя текущего пользователя, данные для хлебные крошек breadcrumbs и т.п.? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2015, 15:11 |
|
||
|
|

start [/forum/topic.php?all=1&fid=18&tid=1356087]: |
0ms |
get settings: |
9ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
36ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
201ms |
get tp. blocked users: |
1ms |
| others: | 256ms |
| total: | 547ms |

| 0 / 0 |
