|
MVC Core странности при попытке сохранения списка в TempData[...]
|
|||
---|---|---|---|
#18+
При сохранении простых данных типа строк и чисел никаких проблем не возникает. Однако сложные объекты типа экземпляров классов требуют сериализации и десериализации. Соответствующим образом должны быть прописаны необходимые сервисы в startup.cs. И проблем с сохранением экземпляров классов не возникает - всё работает как и должно. Фрагменты кода: Контроллер: Код: c# 1. 2. 3.
Представление: Код: c# 1. 2. 3. 4.
В конце кода представления ставим необходимый оператор: Код: c# 1. 2. 3.
И всё работает нормально! Однако, если я в качестве объекта беру список, то сериализация и десериализация проходят нормально, но браузер перестаёт переходить по очередному адресу перехода, если в представлении присутствует TempData.Keep(). Убираю его - переходы происходят нормально, но данные теряются!!! То есть список и Keep() как-то "не любят" друг друга. Пробовал список упрятать в класс и сохранять экземпляр этого класса со списком внутри, но тоже ничего не получилось Вот фрагмент кода со списком внутри класса: Контроллер: Код: c# 1. 2. 3. 4. 5. 6.
Представление: Код: c# 1. 2. 3. 4. 5.
Ну и Код: c# 1. 2. 3.
Сериализация и десериализация проходят нормально, однако попытка перехода по любому адресу закачивается плачевно (см. картинку). Браузер любой. Убираю Keep() - переход есть, но нет данных (что ожидаемо). В чём проблема? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.05.2020, 10:43 |
|
MVC Core странности при попытке сохранения списка в TempData[...]
|
|||
---|---|---|---|
#18+
у тебя кто поставщик для TempData? кука или сессия7 ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2020, 09:35 |
|
MVC Core странности при попытке сохранения списка в TempData[...]
|
|||
---|---|---|---|
#18+
handmadeFromRu у тебя кто поставщик для TempData? кука или сессия7 А чёрт его знает, скорее всего куки. Вот что в startup.cs Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
..................................................................................................... Код: 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. 26. 27. 28. 29. 30. 31.
Простые типы данных и классы - все нормально, а списки и ещё обнаружил, что HtmlString не поддерживаются этой лабудой. С уважением ВВГ ... |
|||
:
Нравится:
Не нравится:
|
|||
02.06.2020, 18:59 |
|
MVC Core странности при попытке сохранения списка в TempData[...]
|
|||
---|---|---|---|
#18+
Я даже и не знал, что такое (TempData) есть. Всем прибывающим с десктопа следует первым делом написать себе маркером на лбу, что веб-приложения они stateless по своей сути, и любые способы присобачить к ним какой-либо state это ужасные костыли и путь к проблемам. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 01:50 |
|
MVC Core странности при попытке сохранения списка в TempData[...]
|
|||
---|---|---|---|
#18+
fkthat Я даже и не знал, что такое (TempData) есть. Всем прибывающим с десктопа следует первым делом написать себе маркером на лбу, что веб-приложения они stateless по своей сути, и любые способы присобачить к ним какой-либо state это ужасные костыли и путь к проблемам. Не, TempData нужна для обработки, например, некоторых кейсов при работе с HTML формами. Stateless это про REST, на классические веб-формы лучше не натягивать. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 03:53 |
|
MVC Core странности при попытке сохранения списка в TempData[...]
|
|||
---|---|---|---|
#18+
ТС https://docs.microsoft.com/ru-ru/aspnet/core/fundamentals/app-state?view=aspnetcore-3.1#tempdata по умолчанию кука и ее размер ограничен у тебя данные не выходят за размер? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 07:58 |
|
MVC Core странности при попытке сохранения списка в TempData[...]
|
|||
---|---|---|---|
#18+
hVostt Stateless это про REST, на классические веб-формы лучше не натягивать. Классические веб-формы лучше вообще никуда не натягивать. Это как раз и есть идиотская попытка натянуть парадигму и шаблоны десктопа на веб. Интересно, скольким разработчикам, перешедшим на веб с десктопа, они мозг изувечили. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 08:35 |
|
MVC Core странности при попытке сохранения списка в TempData[...]
|
|||
---|---|---|---|
#18+
fkthat, Уважаемые коллеги! Спасибо за обсуждение. С уважением ВВГ ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 09:47 |
|
MVC Core странности при попытке сохранения списка в TempData[...]
|
|||
---|---|---|---|
#18+
fkthat hVostt Stateless это про REST, на классические веб-формы лучше не натягивать. Классические веб-формы лучше вообще никуда не натягивать. Это как раз и есть идиотская попытка натянуть парадигму и шаблоны десктопа на веб. Интересно, скольким разработчикам, перешедшим на веб с десктопа, они мозг изувечили. да где ты был в далеком 2009 когда мс выкатил асп формы) вот в те бородатые года мне казалось эт заебись если честно, но потому когда ui становился толще пришло осознание что меня мягко говоря обманули. а потом вышел рор с мвц парадигмой и все изменилось. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 09:55 |
|
MVC Core странности при попытке сохранения списка в TempData[...]
|
|||
---|---|---|---|
#18+
оо забыл написать еще до выхода мвц мы уже начали шлепать через хендеры и свой модельбиндер чтоб портянику не делатб так как модель форм и апдейт панелей был прям жуть жирный ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 09:57 |
|
MVC Core странности при попытке сохранения списка в TempData[...]
|
|||
---|---|---|---|
#18+
handmadeFromRu да где ты был в далеком 2009 когда мс выкатил асп формы) Какой 2009, они года с 2000 существуют, с самой первой версии .NET. У меня по ним то ли в 2002, то ли 2003 году уже сертификат от МС был. "Классическое" ASP при всем своем уродства реализации (VBScript) и то было на порядок более "веб-кошерно", чем формсы. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 10:11 |
|
MVC Core странности при попытке сохранения списка в TempData[...]
|
|||
---|---|---|---|
#18+
fkthat handmadeFromRu да где ты был в далеком 2009 когда мс выкатил асп формы) Какой 2009, они года с 2000 существуют, с самой первой версии .NET. У меня по ним то ли в 2002, то ли 2003 году уже сертификат от МС был. "Классическое" ASP при всем своем уродства реализации (VBScript) и то было на порядок более "веб-кошерно", чем формсы. хз по мне с 2000 что было эт трешак, для меня формы эт с 3.5 фрейма только заиграли ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 10:13 |
|
MVC Core странности при попытке сохранения списка в TempData[...]
|
|||
---|---|---|---|
#18+
handmadeFromRu хз по мне с 2000 что было эт трешак, для меня формы эт с 3.5 фрейма только заиграли Тогда МВЦ уже был и даже уже не самой первой версии. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 13:11 |
|
MVC Core странности при попытке сохранения списка в TempData[...]
|
|||
---|---|---|---|
#18+
handmadeFromRu оо забыл написать еще до выхода мвц мы уже начали шлепать через хендеры и свой модельбиндер чтоб портянику не делатб так как модель форм и апдейт панелей был прям жуть жирный В принципе, ихможно было разумно использовать для сценариев где требуется только отрисовка и если писать все на своих компонентах. Но все эти постбеки, евенты, вьюстейты это все мать дьявола. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 13:14 |
|
MVC Core странности при попытке сохранения списка в TempData[...]
|
|||
---|---|---|---|
#18+
fkthat hVostt Stateless это про REST, на классические веб-формы лучше не натягивать. Классические веб-формы лучше вообще никуда не натягивать. Это как раз и есть идиотская попытка натянуть парадигму и шаблоны десктопа на веб. Интересно, скольким разработчикам, перешедшим на веб с десктопа, они мозг изувечили. Ну почему же? Если у вас сайт, который создан преимущественно для отображения контента, то для какой-нибудь формы обратной связи вкорячивать REST не имеет смысла. Веб-формы отлично подходят. Они просты, надёжны и работают даже при отключенном JS, т.е. вы сможете отправить своё сообщение, даже с кофеварки. Иногда это имеет смысл. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 14:05 |
|
|
start [/forum/topic.php?fid=18&fpage=7&tid=1354693]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
72ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
others: | 235ms |
total: | 403ms |
0 / 0 |