powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Хочу через ViewBag передать данные во View, но просят привязать источник данных.
25 сообщений из 80, страница 2 из 4
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38539523
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRu, по поводу title и иже http://codearticles.ru/articles/2438
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38539524
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУЛюбые данные (а не только выпадающего списка) нужно прибивать гвоздями к вью модели. На то она и вью модель.

Вью модель это лишь концепция. Как и любая концепция она имеет разумные рамки применения. Фанатичныму подходу в программировании -- не место. На трибуне унимка-профессора, пожалуйста, можно впаривать что угодно в молодые мозги. На практике нужно включать мозг в первую очередь.

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
[PopulateCategories]
public ActionResult Edit(int id)
{
   ...
   return View(model);
}

[PopulateCategories]
public ActionResult Edit(SomeViewModel model)
{
   ...
   return View(model);
}




Модель и данные для выпадающего списка -- не связаны. И не надо их сшивать белыми нитками. Нет в этом никакой потребности. Атрибут [PopulateCategories] складывает данные во ViewData только при рендеринге View и не зависит от конкретной модели, где эти данные могут понадобиться.
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38539529
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУhandmadeFromRu, по поводу title и иже http://codearticles.ru/articles/2438

жесть какая-то. ну ты и извращениц
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38539560
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМСУЛюбые данные (а не только выпадающего списка) нужно прибивать гвоздями к вью модели. На то она и вью модель.

Вью модель это лишь концепция. Как и любая концепция она имеет разумные рамки применения. Фанатичныму подходу в программировании -- не место. На трибуне унимка-профессора, пожалуйста, можно впаривать что угодно в молодые мозги. На практике нужно включать мозг в первую очередь.

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
[PopulateCategories]
public ActionResult Edit(int id)
{
   ...
   return View(model);
}

[PopulateCategories]
public ActionResult Edit(SomeViewModel model)
{
   ...
   return View(model);
}




Модель и данные для выпадающего списка -- не связаны. И не надо их сшивать белыми нитками. Нет в этом никакой потребности. Атрибут [PopulateCategories] складывает данные во ViewData только при рендеринге View и не зависит от конкретной модели, где эти данные могут понадобиться.

Никому не показывай этот кромешный ад. Связыванием данных и модели занимается контроллер и никто иной. У тебя же получается каша. Что-то на модель вяжется с контроллера, что-то с атрибута и вью бага. Маразматичнее еще я ничего в жизни не видел. Именно для таких упоротокодеров создавался чудесный мвц, но они его снова опошлили и забросали пометом. Ужос.
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38539562
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Атрибуты для наполнения вью багов. Такое даже в страшном сне не приснится
Скиана, ты где. Посмотри на эту жуть :)
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38539637
eJack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuМСУ,
ну как те сказать. я не вижу разницы просто: что я прокидываю коллекции через модель для биндинга дропдаунов что через ViewBag . Тестам это не мешает так как на входе модель, тупо id-ники выбранных элементов. Эти искусственные коллекции не несут какой то логики кроме как забиндить список и все. Ты еще скажи ты title и meta без ViewBag прокидываешь. Это чисто мои ощущения даже с большим кол-во контролов, конечно будет фейл если имена переменных во ViewBag пересекутся или поле ключа переименовали. и МСУ давай без твоих шуточек про стадо и прочее. я тебе свои аргументы ты мне свои. а какашками все умеют кидаться.

eJack
в чем нормальность? прокинули коллекцию Id-Name без какой либо смысловой нагрузки? по вашему я не смогу тестами покрыть это дело?

А теперь давайте решим нормальную задачу и возьмем сущность посложнее, например, клиент - юр. лицо.
У него куча классификаторов, групп, категорий, лимитов, продукты, история запросов и т.д., это не считая обычных атрибутов типа адреса, контакты, контрагенты, доверенные лица и т.д. И стоит задача - разработать View для работы с катрочкой клиентов, да еще и для разных ролей пользователей разработать разные View с возможность отображать только доступную этой роли информацию и доступные операции.

начнем с этих строк:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
ViewBag.Ingredient = new SelectList(db.Goods, "Id", "Name");
            ViewBag.Product = new SelectList(db.Products, "Id", "Name");
            ViewBag.Name = from a in db.Products where a.Id == id select a.Name;
            ViewBag.viewModel =
                (from il in db.IngLists
                 join p in db.Products on il.ProdId equals p.Id
                 join g in db.Goods on il.GoodId equals g.Id
                 where (il.ProdId == id) && (il.GoodId == g.Id)
                 select new IngListModel { IngListId = il.Id, ProdId = p.Id, ProdName = p.Name, IngName = g.Name, Amount = il.amount }).ToList();
            return View();



Вы для каждого View будите коллекции протягивать и их тестами покрывать? Флаг в руки и барабан на шею - но играйте на них не у меня! А как же работа с кешами, или если добавили или изменили атрибуты, или теперь данные по контрагентам подтянгиваются не из базы а из внешнего сервиса - переписываем все view, методы контролеров - так?

Далее, у такой сущности будет пара десятков выпадающих списков и вы будите так на всех View их отображать и как отлаживать будите без типизации?
Код: c#
1.
2.
3.
4.
5.
6.
7.
// где-то в фильтре или контроллере:

ViewBag.CategoryId = new SelectList(categories, "Id", "Name");

// потом во вью:

@Html.DropDownList("CategoryId");



В моем случае и МСУ предложенном(нормальном), на этапе компиляции получите отлуп - а тут уже на сервере будите отлаживать - дольше и не эффективнее - кому это нужно?

hVostteJackОсобенно если таких выпадающих списков на форме много, замучаешься ViewBag писать сначала в методе контроллера, а потом в разметке.

View должен отображать жанные из одного места - из модели.


понятие "декомпозиция" вам о чём-нибудь говорит? данные для выпадающего списка прибивать гвоздями к вью модели -- практика однозначно плохая и неэффективная.

Давайте раскройте мне тайну про декомпозицию?!

handmadeFromRueJack,
целевую модель никто не пихает во вьюбег, а если смотреть ваш примеру - вы имели ввиду это, только вспомогательные списки.

Вспомогательные списки - это что?, это не свойства бизнес сущности? Приведите примеры
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38539649
eJack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRu, hVostt,

а так же я бы хотел увидеть в вашем исполнении (с применением ViewBag) методы контроллера и View:

index, insert (Get), insert(Post), update(Get), update(Post), delete (Get, Post) особенно в свете фразы -

handmadeFromRu
........ по вашему я не смогу тестами покрыть это дело?


ну и тесты собственно.
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38539919
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАтрибуты для наполнения вью багов. Такое даже в страшном сне не приснится
Скиана, ты где. Посмотри на эту жуть :)

фильтры являются частью логики контроллера (аспекты). в чём проблема-то?
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38539920
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУСвязыванием данных и модели занимается контроллер и никто иной. У тебя же получается каша.

никакой каши. каждый отвечает чётко за свою узко специализированную задачу. если хочется типизированности, то тогда выпадающие списки надо генерить через отдельный PartialAction, и туда пробрасывать свою любимую типизированную модель. ради бога.
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38539922
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eJackДавайте раскройте мне тайну про декомпозицию?!

никакой тайны. разделяй и властвуй. ибо нехрен
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38539923
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eJackа так же я бы хотел увидеть в вашем исполнении (с применением ViewBag) методы контроллера и View:

я уже привёл кусок кода. экстраполируйте. что касается тестирования, фильтры тестируются не хуже (а даже и лучше) контроллеров. показать как должен выглядеть тест, который после работы фильтра должен обнаружить во ViewBag коллекцию SelectListItem? в чём проблема, ещё раз? вы пока оба вместе с МСУ кроме размахивания руками в воздухе ещё не указали ни на одну проблему в таком подходе.
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38539996
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttфильтры являются частью логики контроллера (аспекты). в чём проблема-то?
Проблему наглядно описал eJack на примере юридического лица, его нетривиальных атрибутов и связей. Туда же в замес попала безопасность с ролями, которая должна запрещать доступ к тем или иным данным, а так же усекать выборки в разрезе прав. Причем, эта типизированная цепочка не должна зависеть от каких-то атрибутов и не должна быть прибита гвоздями к MVC. Эту модель можно использовать хоть в WPF, хоть в WinForms, хоть в SOA. Вот это называется правильная архитектура. А у тебя какой-то бред сивой кобылы, смесь мух и тараканов. Лично мне не нужна такая каша.

hVosttникакой каши. каждый отвечает чётко за свою узко специализированную задачу. если хочется типизированности, то тогда выпадающие списки надо генерить через отдельный PartialAction, и туда пробрасывать свою любимую типизированную модель. ради бога.
Да пофиг, как именно генерить представление. Хоть циклом @foreach динамически создавать select с option'ами. Самое главное - должна быть полноценная типизированная модель, которая будет намапливаться на представление, с которой можно удобно и гибко работать, которую можно прозрачно покрывать тестами и создавать mock'и, которую можно использовать вне контекста MVC и так далее. А как создать конечный комбобокс на клиенте - дело десятое и малопринципиальное. Мне нравится создание "комбобокса на лету", как я показал выше. Никаких трудозатрат и лишних телодвижений по созданию чего-то там где-то там. Просто, типизированно и гибко.

hVosttвы пока оба вместе с МСУ кроме размахивания руками в воздухе ещё не указали ни на одну проблему в таком подходе.
Тебе уже всё разжевали и в рот положили. handmadeFromRu согласился с доводами, потому что понял суть сказанного и взвесил за и против. У тебя же с пониманием, как всегда, затяжной период.
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38540153
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eJack, давай продолжим диалог дальше, хоть я уже и согласился с МСУ, и это уже ничего не меняет. Пафос про тимлида и увольнение зачем это писать? да может я не столь опытен и могу ошибаться, но аргументируй! а не пишите я тимлид и уволил бы. Но мне стало интересно по поводу некоторых ваших фраз. И мы да говорим в контексте ViewModel а не бизнес модели, почувствуйте разницу.

eJackА теперь давайте решим нормальную задачу и возьмем сущность посложнее, например, клиент - юр. лицо.
У него куча классификаторов, групп, категорий, лимитов, продукты, история запросов и т.д., это не считая обычных атрибутов типа адреса, контакты, контрагенты, доверенные лица и т.д. И стоит задача - разработать View для работы с катрочкой клиентов, да еще и для разных ролей пользователей разработать разные View с возможность отображать только доступную этой роли информацию и доступные операции.

хм а зачем ложить все яйца в корзину если можно разбить на подвюьшки? причем все равно конечный пользователь будет редактировать только какую то часть всего того что вы перечислили. Если у меня проекты разные asp mvc asp forms wpf я не смогу удержать 1 и туже ViewModel , по простой причине что UI будет не такой, но бизнес модель таже и остается напамить её на конкретную ViewModel. Что показывать в разрезе прав это уровень бл и модели бл. а бл часто не равно контролеру. в ViewModel контроллер поместил, то и будет отображено. Приведу пример где во ViewModel не получится прокинуть списки всегда, у вас каскадные дропдауны. Вы не сможете прокинуть все возможные варианты прокинуть в таком случае.

eJackначнем с этих строк:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
ViewBag.Ingredient = new SelectList(db.Goods, "Id", "Name");
            ViewBag.Product = new SelectList(db.Products, "Id", "Name");
            ViewBag.Name = from a in db.Products where a.Id == id select a.Name;
            ViewBag.viewModel =
                (from il in db.IngLists
                 join p in db.Products on il.ProdId equals p.Id
                 join g in db.Goods on il.GoodId equals g.Id
                 where (il.ProdId == id) && (il.GoodId == g.Id)
                 select new IngListModel { IngListId = il.Id, ProdId = p.Id, ProdName = p.Name, IngName = g.Name, Amount = il.amount }).ToList();
            return View();



никто целевую модель не кинет во вьюбег, вы передергиваете, вьюшка типизирована, не типизированы только списки для дропдаунов. читаем внимательно.

eJackВы для каждого View будите коллекции протягивать и их тестами покрывать? Флаг в руки и барабан на шею - но играйте на них не у меня! А как же работа с кешами, или если добавили или изменили атрибуты, или теперь данные по контрагентам подтянгиваются не из базы а из внешнего сервиса - переписываем все view, методы контролеров - так?

тестировать представление эм зачем? там нет логики и все тривиально, или мне протестить какая верстка на выхлопе? А что кеши? или сторонние сервисы? все данные придут из бл. какие проблемы? и как это решит ваша вьюмодель то? или мы мешаем вьюмодель с модель бизнес логики?

eJackДалее, у такой сущности будет пара десятков выпадающих списков и вы будите так на всех View их отображать
пара десятков выпадающий на 1 вью? эм как минимум не правильный UI.

eJackи как отлаживать будите без типизации?
....
на этапе компиляции получите отлуп - а тут уже на сервере будите отлаживать - дольше и не эффективнее - кому это нужно?

вот уже по делу и я это сам уже писал на 1 странице, что могут быть проблемы. я тут согласен полностью. + dynamic все таки медленная штука если хайлоад

eJackВспомогательные списки - это что?, это не свойства бизнес сущности? Приведите примеры

это нифига не свойства бизнес сущности, это свойство модели представления и не более.

eJackindex, insert (Get), insert(Post), update(Get), update(Post), delete (Get, Post) особенно в свете фразы -

объясните зачем мне тестить каждый экшен? зачастую бл != контролеру\экшен. я тестирую бл и не важно что у меня веб формы, асп мвц или wpf. в тестах для бл подменяю на мок-репо источник данных. может я не знаю, в силу малоопытности и вы меня обогатите знаниями зачем мне тестить представление. Мне хватает чтоб силениум протестил юзер кейсы для вьюшек.


п.с. мне интересно что вы скажите и мне не стремно сказать, что я не прав если мне аргументируют. у меня сложилось впечатление, что у вас вьюмодель это модель бизнес логики. Я может не правильно мыслил и после этого стану лучше понимать.
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38540275
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRueJack, давай продолжим диалог дальше, хоть я уже и согласился с МСУ, и это уже ничего не меняет. Пафос про тимлида и увольнение зачем это писать? да может я не столь опытен и могу ошибаться, но аргументируй! а не пишите я тимлид и уволил бы.
Не ной, а сконцентрируйся на проблеме лучше. Ныть - в детский сад.

handmadeFromRuНо мне стало интересно по поводу некоторых ваших фраз. И мы да говорим в контексте ViewModel а не бизнес модели, почувствуйте разницу.
Так тем более, вью-модель должна вообще полностью описывать UI. Или ты к чему это спросил? К тому, что вью модель не нужно тестировать? Ну почувствовали разницу, а дальше-то что?

handmadeFromRuхм а зачем ложить все яйца в корзину если можно разбить на подвюьшки? причем все равно конечный пользователь будет редактировать только какую то часть всего того что вы перечислили. Если у меня проекты разные asp mvc asp forms wpf я не смогу удержать 1 и туже ViewModel , по простой причине что UI будет не такой, но бизнес модель таже и остается напамить её на конкретную ViewModel. Что показывать в разрезе прав это уровень бл и модели бл. а бл часто не равно контролеру. в ViewModel контроллер поместил, то и будет отображено. Приведу пример где во ViewModel не получится прокинуть списки всегда, у вас каскадные дропдауны. Вы не сможете прокинуть все возможные варианты прокинуть в таком случае.
Какие подвьюшки, ты о чем? Есть логика, есть данные. На основе логики нужно скрыть данные или их усечь. Всё это делается с моделью, вью отображает данные. Генерация или сокрытие контролов в зависимости от логики - на лету в разоре. Я уже тут сто раз вам разжевывал про ISecurityService, который выпиливает из модели ненужное и предоставляет все данные по анализу доступности того или иного объекта. Какие вьюшки?

handmadeFromRuникто целевую модель не кинет во вьюбег, вы передергиваете, вьюшка типизирована, не типизированы только списки для дропдаунов. читаем внимательно.
Осталось только понять, что есть целевая модель, а что есть нецелевая модель. И почему списки для комбобоксов не типизированы? Чем они такие особенные? Есть еще и гриды master-detail-detail-..., чеклистбоксы, n-колоночные комбобоксы, шедулеры, и прочая списочная хрень. Ты всё это тоже предлагаешь выносить в этот нетипизированный кал? Так проще сразу убить себя.

handmadeFromRuтестировать представление эм зачем? там нет логики и все тривиально, или мне протестить какая верстка на выхлопе? А что кеши? или сторонние сервисы? все данные придут из бл. какие проблемы? и как это решит ваша вьюмодель то? или мы мешаем вьюмодель с модель бизнес логики?
Тестировать представление тоже нужно, и логика в нем тоже есть. Банальные даже ифы для генерации или сокрытия контролов. Да и речь не только в тестировании вью-модели, как ты не можешь понять этого.

handmadeFromRueJackДалее, у такой сущности будет пара десятков выпадающих списков и вы будите так на всех View их отображать
пара десятков выпадающий на 1 вью? эм как минимум не правильный UI.
Не нужно судить о неправильности на основе своего скудного опыта. Пара десятков комбобоксов - это мелочи. Посиди как-нить на досуге в бухгалтерии серьезной компании (1С, аксапта или SAP) и посмотри на их формы. После этого можешь пойти и снова убить себя. Дабл пенитрэйшен фаталити.

handmadeFromRuп.с. мне интересно что вы скажите и мне не стремно сказать, что я не прав если мне аргументируют. у меня сложилось впечатление, что у вас вьюмодель это модель бизнес логики. Я может не правильно мыслил и после этого стану лучше понимать.
Ты не прав. Позволь мне это сказать за еджека. Остальное придет с опытом.
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38540475
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУВот это называется правильная архитектура. А у тебя какой-то бред сивой кобылы, смесь мух и тараканов.

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

давай ещё раз поясню. у меня в модели есть поле CategoryId. это некий код, обозначающий связь с сущностью. в модели нет никакой коллекции этих сущностей. нет и быть не может. какого хрена я должен наклать говна с ложкой в модель? зачем? это легко и элегантно решается, проблем пока не вижу.

обозначьте хоть одно. тыкните носом. только без разглагольствований "вот так правильно, а так неправильно" -- не филосовствуйте. покажите проблему.
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38540476
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУУ тебя же с пониманием, как всегда, затяжной период.

да я бы рад. но вы пока ходите с умным видом вокруг да около. по сути не говорите. похоже что-то знаете такое, что никто не знает
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38540552
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМСУВот это называется правильная архитектура. А у тебя какой-то бред сивой кобылы, смесь мух и тараканов.
эй-эй. как раз таки я именно эту проблему и решил. мухи отдельно, кобылы с мухми тоже порознь. а вот вы с ежиком напялили на себя православно-типизированный противогаз с топчитесь с какашках с возгласами "а нам не воняет""
Ты ничего не решил, ты сделал очередную глупость. Часть инициализации модели представления вынес в отдельный скоуп. И всё ради чего, ради каких-то там комбобоксов? Только полный чайник будет ломать модель из-за удобства программирования UI. Да и какое удобство, как-раз наоборот.

hVosttдавай ещё раз поясню. у меня в модели есть поле CategoryId. это некий код, обозначающий связь с сущностью. в модели нет никакой коллекции этих сущностей. нет и быть не может. какого хрена я должен наклать говна с ложкой в модель? зачем? это легко и элегантно решается, проблем пока не вижу.
Я тебе десятый раз повторяю, если в UI требуется вывести какие-то данные, они безотлагательно должны фигурировать в модели. Это даже не обсуждается. Мне твоё UI фиолетово, завтра моя модель уйдет в WPF и что я буду в XAML писать, твои экшен атрибуты из MVC? Да хрен бы с WPF, даже со здравой точки зрения инициализация данными в n местах - бред сивой кобылы. Тебе писать код противопоказано, серьезно Иногда ты такой бред несешь, что даже читать его опасно.

hVosttобозначьте хоть одно. тыкните носом. только без разглагольствований "вот так правильно, а так неправильно" -- не филосовствуйте. покажите проблему.
Разжевали и в рот положили. Что не ясно?

hVosttМСУУ тебя же с пониманием, как всегда, затяжной период.
да я бы рад. но вы пока ходите с умным видом вокруг да около. по сути не говорите. похоже что-то знаете такое, что никто не знает
Уже всё сказано и написано. Я не виноват, что до тебя не доходит...
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38540563
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttобозначьте хоть одно. тыкните носом. только без разглагольствований "вот так правильно, а так неправильно" -- не филосовствуйте. покажите проблему.

Код: html
1.
@Html.DropDownList("CategorYId")


Тут студия не палит ошибку, вариант? )
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38540694
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

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

МСУЯ тебе десятый раз повторяю, если в UI требуется вывести какие-то данные, они безотлагательно должны фигурировать в модели. Это даже не обсуждается.

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

ПарамонhVosttобозначьте хоть одно. тыкните носом. только без разглагольствований "вот так правильно, а так неправильно" -- не филосовствуйте. покажите проблему.

Код: html
1.
@Html.DropDownList("CategorYId")



Тут студия не палит ошибку, вариант? )

кхм.

@Html.DropDownList("")

а так вообще пох, и ведь будет работать
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38540704
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУТолько полный чайник будет ломать модель из-за удобства программирования UI. Да и какое удобство, как-раз наоборот.

как раз ты и ломаешь модель. конкретное действие контроллера работает с конкретной моделью. нехрен туда пихать всё что надо и ненадо. данные для выпадающего списка нужны отдельному контролу. он может располагаться во многих местах и учавствовать в отображении разных моделей. и делать мне больше нех, как забивать один и тотже список 10 раз, размазывать эту какаху на все контроллеры и действия. так не делается.
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38540714
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Простите, что вмешиваюсь в ваш высоконаучный спор. А что мешает сделать отдельный класс для всех этих списков и цеплять его к модели как свойство?
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38540830
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttкхм.

@Html.DropDownList("")

а так вообще пох, и ведь будет работать

Вот именно, так что используем DropDownListFor ? )
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38540836
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМСУ, пока что вижу сплошную демагогию. так дескать правильно, в трактатах записано, а так неправильно. но почему? хз, иди сам додумай.
Типизация - это демагогия? Ну могу посоветовать только убиться после таких слов :)

hVosttМСУЯ тебе десятый раз повторяю, если в UI требуется вывести какие-то данные, они безотлагательно должны фигурировать в модели. Это даже не обсуждается.
во-первых. не какие-то, а весьма конкретные. естественно они должны быть в модели. но ты запихиваешь в модель всё что попало. в итоге это у тебя не модель, а куй знает что. что попало короче.
Я запихиваю в модель не всё, что попало, а всё, что нужно представлению. В итоге у меня модель (представления) - полностью описывает UI, от начала и до конца. Как и должно быть со всеми вытекающими бенефитами. А твой хардкор просто неприемлем, особенно MVVM-щики тебя бы кастрировали за такой говнокод, не меньше.
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38540901
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонhVosttкхм.

@Html.DropDownList("")

а так вообще пох, и ведь будет работать

Вот именно, так что используем DropDownListFor ? )

зашем? @Html.EditorFor(x => x.Prop)

в шаблоне для Prop лежит @Html.DropDownList("")

и волки целы и овцы сыты
...
Рейтинг: 0 / 0
Хочу через ViewBag передать данные во View, но просят привязать источник данных.
    #38540911
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУА твой хардкор просто неприемлем, особенно MVVM-щики тебя бы кастрировали за такой говнокод, не меньше.

при чем тут mvvm-щики. там вообще другой подход. совершенно другой. и тоже, кстати, в модель всё подрят не пихают. разбивают на разные модели с наименьшей зависимостью друг от друга.


МСУТипизация - это демагогия? Ну могу посоветовать только убиться после таких слов :)

если ты не понял, я против типизации ничего не имеют против. только за. SelectList офигенно типизирован для любой коллекции ключ-значение. кладётся он во вьюбэг не просто по какому-то выдуманному ключу, а по ключу поля, к которому привязывается. это здесь тоже можно обойтись без магических строк и получать из мета. ниче не сломается, и тестится великолепно.
...
Рейтинг: 0 / 0
25 сообщений из 80, страница 2 из 4
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Хочу через ViewBag передать данные во View, но просят привязать источник данных.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]