Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
ListView и встроенные в него элементы управления
|
|||
|---|---|---|---|
|
#18+
Всем добрый день. Надеюсь на помощь зала. Описание ситуации: 1.Есть ListView который посредством DataSorceID получает данные через SqlDataSource из некой таблицы_1 (база SQL). 2.В разделе ItemTemplate вся информация представляется через Label и все прекрасно видится и отображается. 3.В разделе InsertItemTemplate информация вводится через TextBox_ы и два DropDownList из которых каждый получает данные из таблицы_2 и таблицы_3 (таблицы справочники) 4.В SqlDataSource (который привязан к ListView) команда Insert производится через хранимую процедуру 5.Для полноценного выполнение команды Insert в SqlDataSource есть раздел InsertParameters И вот с этого места начинаются косяки. <InsertParameters> <asp:ControlParameter Name="KodObezd" ControlID="ddlObezd" PropertyName="SelectedValue" Type="Int16" /> <asp:ControlParameter Name="KodEch" ControlID="hfKodEch" PropertyName="Value" Type="Byte" /> <asp:Parameter Name="KodSU" Type="Byte" /> <asp:Parameter Name="KodPeregon" Type="Int16" /> <asp:Parameter Name="Npp" Type="Int16" /> <asp:Parameter Name="Zamechan" Type="String" /> <asp:Parameter Name="DateRemoval" Type="DateTime" /> <asp:Parameter Name="Done" Type="Boolean" /> <asp:Parameter Name="Primechan" Type="String" /> </InsertParameters> Первые два параметра это элементы управления, которые в ListView не входят, просто находятся на странице и с ними все в порядке (данные передаются корректно). Параметры 3 и 4 это данные поступают от DropDownList_ов встроенных в раздел InsertItemTemlate. Остальные параметры - это TextBox_ы так же находящиеся в разделе InsertItemTemlate. При такой схеме, по нажатию кнопки "Сохранить", получаем новую запись в Таблице_1, где данные соответствуют тому, что вводили, но в полях KodSU и KodPeregon имеем NULL. Т.е. данные из DropDownList не прочитались. С TextBox_ами все замечательно. Долго ломал голову. В качестве эксперемента вместо DropDownList_ов поставил TextBox_ы. Ввел в них нужные цифры - запись в Таблицу_1 добавилась идеальная. Все как надо. Но ведь мне не это надо. Тогда поменял типы параметров. Вместо: <asp:Parameter Name="KodSU" Type="Byte" /> <asp:Parameter Name="KodPeregon" Type="Int16" /> записал: <asp:ControlParameter Name="KodSU" ControlID="ddlSU" PropertyName="SelectedValue" Type="Byte" /> <asp:ControlParameter Name="KodPeregon" ControlID="ddlPeregon" PropertyName="SelectedValue" Type="Int16" /> После заполнения компонентов нужными данными жму кнопку "Сохранить" - страница задумывается. Нет, желтый экран смерти не вываливается. Так обычно бывает когда SQL_ю, что то не нравится, а сказать не может. Признаюсь - я тоже не знаю как его об этом спросить. Пробовал через SqlDataSorce_Inserted отловить ошибку, но похоже SQL задумывается раньше этого события. Немного отвлекся, продолжу - после этого жму кнопку "Отменить", страница продолжает работать в штатном режиме. Проверяю Таблицу_1 - запись не добавилась. Вообщем я понял так: DropDownList встроенный в ListView не стыкуется с параметрами. И я не могу это сделать. Не знаю, доходчиво ли я объяснил свою проблему. Но я сам не могу понять почему работает то, что правильно работает? Т. е откуда <asp:Parameter Name=. . . /> берет значение которое я заношу в TextBox находящийся в разделе InsertItemTemplate. И почему не работает то, что должно работать. Почему параметр не видит значения при варианте: <asp:ControlParameter Name=. . . /> Ведь если бы DropDownList_ы и TextBox_ы располагались не в ListView, а просто на странице в каком нибудь <div> тогда нужно было бы использовать именно ControlParameter. Объясните пожалуйста, кто чем может? Предупреждаю сразу - опыт у меня не ахти какой, а знаний еще меньше. Поэтому прошу отнестись с пониманием. P.S. Пробовал внести куски кода, но получается не читабельно. Тяжело в нем разбираться. Если кто подскажет как сделать лучше, буду рад. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 07:41 |
|
||
|
ListView и встроенные в него элементы управления
|
|||
|---|---|---|---|
|
#18+
Vlad5780, я не претендую на должность ShockerPro, но тем не менее Как мне оформить свое сообщение? Ибо сообщение оформленное таким образом не хочется даже напрягаться и читать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 12:26 |
|
||
|
ListView и встроенные в него элементы управления
|
|||
|---|---|---|---|
|
#18+
Всем добрый день. Надеюсь на помощь зала. Описание ситуации: 1 .Есть ListView который посредством DataSorceID получает данные через SqlDataSource из некой таблицы_1 (база SQL). 2 .В разделе ItemTemplate вся информация представляется через Label и все прекрасно видится и отображается. 3 .В разделе InsertItemTemplate информация вводится через TextBox_ы и два DropDownList из которых каждый получает данные из таблицы_2 и таблицы_3 (таблицы справочники) 4 .В SqlDataSource (который привязан к ListView) команда Insert производится через хранимую процедуру 5 .Для полноценного выполнение команды Insert в SqlDataSource есть раздел InsertParameters И вот с этого места начинаются косяки. <InsertParameters> <asp:ControlParameter Name="KodObezd" ControlID="ddlObezd" PropertyName="SelectedValue" Type="Int16" /> <asp:ControlParameter Name="KodEch" ControlID="hfKodEch" PropertyName="Value"Type="Byte" /> <asp:Parameter Name="KodSU" Type="Byte" /> <asp:Parameter Name="KodPeregon" Type="Int16" /> <asp:Parameter Name="Npp" Type="Int16" /> <asp:Parameter Name="Zamechan" Type="String" /> <asp:Parameter Name="DateRemoval" Type="DateTime" /> <asp:Parameter Name="Done" Type="Boolean" /> <asp:Parameter Name="Primechan" Type="String" /> </InsertParameters> Первые два параметра это элементы управления, которые в ListView не входят, просто находятся на странице и с ними все в порядке (данные передаются корректно). Параметры 3 и 4 это данные поступают от DropDownList_ов встроенных в раздел InsertItemTemlate. Остальные параметры - это TextBox_ы так же находящиеся в разделе InsertItemTemlate. При такой схеме, по нажатию кнопки "Сохранить" , получаем новую запись в Таблице_1 , где данные соответствуют тому, что вводили, но в полях KodSU и KodPeregon имеем NULL . Т.е. данные из DropDownList не прочитались. С TextBox_ами все замечательно. Долго ломал голову. В качестве эксперемента вместо DropDownList_ов поставил TextBox_ы. Ввел в них нужные цифры - запись в Таблицу_1 добавилась идеальная. Все как надо. Но ведь мне не это надо. Тогда поменял типы параметров. Вместо: <asp:Parameter Name="KodSU" Type="Byte" /> <asp:Parameter Name="KodPeregon" Type="Int16" /> записал: <asp:ControlParameter Name="KodSU" ControlID="ddlSU" PropertyName="SelectedValue" Type="Byte" /> <asp:ControlParameter Name="KodPeregon" ControlID="ddlPeregon" PropertyName="SelectedValue" Type="Int16" /> После заполнения компонентов нужными данными жму кнопку "Сохранить" - страница задумывается. Нет, желтый экран смерти не вываливается. Так обычно бывает когда SQL _ю, что то не нравится, а сказать не может. Признаюсь - я тоже не знаю как его об этом спросить. Пробовал через SqlDataSorce_Inserted отловить ошибку, но похоже SQL задумывается раньше этого события. Немного отвлекся, продолжу - после этого жму кнопку "Отменить" , страница продолжает работать в штатном режиме. Проверяю Таблицу_1 - запись не добавилась. Вообщем я понял так: DropDownList встроенный в ListView не стыкуется с параметрами. И я не могу это сделать. Не знаю, доходчиво ли я объяснил свою проблему. Но я сам не могу понять почему работает то, что правильно работает? Т. е откуда <asp:Parameter Name=. . . /> берет значение которое я заношу в TextBox находящийся в разделе InsertItemTemplate. И почему не работает то, что должно работать. Почему параметр не видит значения при варианте: <asp:ControlParameter Name=. . . /> Ведь если бы DropDownList_ы и TextBox_ы располагались не в ListView, а просто на странице в каком нибудь <div> тогда нужно было бы использовать именно ControlParameter. Объясните пожалуйста, кто чем может? Предупреждаю сразу - опыт у меня не ахти какой, а знаний еще меньше. Поэтому прошу отнестись с пониманием. P.S. Пробовал внести куски кода, но получается не читабельно. Тяжело в нем разбираться. Если кто подскажет как сделать лучше, буду рад. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 13:14 |
|
||
|
ListView и встроенные в него элементы управления
|
|||
|---|---|---|---|
|
#18+
Axeleron, теперь будешь напрягаться ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 13:15 |
|
||
|
ListView и встроенные в него элементы управления
|
|||
|---|---|---|---|
|
#18+
Vlad5780Axeleron, теперь будешь напрягаться ? Нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 13:18 |
|
||
|
ListView и встроенные в него элементы управления
|
|||
|---|---|---|---|
|
#18+
WebForms для вашего сценария - это получить все, что надо в *.cs, и там вызвать нормально, учитывая все ньюансы, хранимку и потом не забыть для контролов DataBind() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 20:21 |
|
||
|
ListView и встроенные в него элементы управления
|
|||
|---|---|---|---|
|
#18+
Мойшик ТрунькинWebForms для вашего сценария - это получить все, что надо в *.cs, и там вызвать нормально, учитывая все ньюансы, хранимку и потом не забыть для контролов DataBind() Если не трудно, подскажите чем *.cs отличается от *.aspx.vb (мое приложение на vb.net) И если я Вас правильно понял, Вы предлагаете весь механизм работы (выборка, изменение, добавление) с таблицами описать в ручную в этом самом *.cs, ну и не забыть обновить (DataBind) контролы после всех этих манипуляций. Я согласен с тем, что такое решение работает стабильней. Но Вы правильно заметили " учитывая все нюансы ", а это для меня пока Рубикон. Пытаюсь разобраться, но не всегда получается. Например у меня до сих пор не получается достучаться до любого контрола встроенного в ListView (хочется верить, что лыжи не едут). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2016, 04:07 |
|
||
|
ListView и встроенные в него элементы управления
|
|||
|---|---|---|---|
|
#18+
Vlad5780... Если не трудно, подскажите чем *.cs отличается от *.aspx.vb (мое приложение на vb.net) - Языком: C#/VB.Net Vlad5780И если я Вас правильно понял, Вы предлагаете весь механизм работы (выборка, изменение, добавление) с таблицами описать в ручную в этом самом *.cs, ну и не забыть обновить (DataBind) контролы после всех этих манипуляций. Я согласен с тем, что такое решение работает стабильней. Но Вы правильно заметили " учитывая все нюансы ", а это для меня пока Рубикон. Пытаюсь разобраться, но не всегда получается. Например у меня до сих пор не получается достучаться до любого контрола встроенного в ListView (хочется верить, что лыжи не едут). Я когда-то начинал с вебформс, но постепенно отказался по ряду неудобств. В частности, это слабый контроль за разметкой и клиентом. Гиморно работать с HXR/AJAX. В контролах это всё зашито и шаг в сторону ведет либо к рихтованию самого контрола, либо написанию своего. Плюс изучение свойств контрола может являться дополнительной нагрузкой и бывает весьма гиморной. В итоге, для меня минусы вебформс перевесили плюсы и пришлось с ними попрощаться. В вашем случае: - Если вы сами являетесь архитектором, то м.б. есть смысл уже сейчас свернуть на паттерн MVC или подобный. - Если сворачивать поздно или не возможно, то, ориентируясь на будущее, может есть смысл не заморачиваться с контролами, а работать как предложил Мойшик Трунькин - использовать "стандартные" средства для работы с БД в кодбихайнд, а результат выплевывать в тот же Label. Заодно и, например, LINQ, паттерн Repository+UoW и многое нужное изучите. Да, м.б. не кошерно, но ... решайте сами. Просто соотношение вебформс/MVC в сети по примерам, наверное 1:10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2016, 10:08 |
|
||
|
ListView и встроенные в него элементы управления
|
|||
|---|---|---|---|
|
#18+
Ребята, всем большое спасибо! Благодаря вам я узнал что в asp.net существуют два направления WebForms и MVC. Я не шучу. Web программированием я занимаюсь третий месяц. В перерывах между основной работой. На производстве был старый проект (сайт) написанный на vb.net, еще лет пять назад. Появилась необходимость расширить и углубить его функционал. Выбрали меня для решения этой задачи. Вот сейчас в голове полный хаос. Пришлось учить по старому проекту и asp (теперь знаю, что линию webforms) и vb.net, хотя по инету вижу, что преобладающая масса пишет на С. Но признаюсь, что сам факт web программирования мне интересен и увлекателен. Да и в голове бардак постепенно по полкам раскладывается. И конечно появилось желание узнать и попробовать - что такое MVC. А со своей проблемой я разобрался. Как обычно - недоглядел нюанс. Старый проект он вроде и помогает, а иногда и столку сбивает. Ведь леплю по образу и подобию. Еще раз всем спасибо! И даже пассивному (который не хочет напрягаться) товарищу спасибо. Оказывается делать цветной текст просто (но муторно). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2016, 02:07 |
|
||
|
ListView и встроенные в него элементы управления
|
|||
|---|---|---|---|
|
#18+
Код: html 1. Кнопка "выделение исходников" для этого есть ..леать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2016, 06:28 |
|
||
|
ListView и встроенные в него элементы управления
|
|||
|---|---|---|---|
|
#18+
Vlad5780Ребята, всем большое спасибо! Благодаря вам я узнал что в asp.net существуют два направления WebForms и MVC. Я не шучу. Web программированием я занимаюсь третий месяц. В перерывах между основной работой. На производстве был старый проект (сайт) написанный на vb.net, еще лет пять назад. Появилась необходимость расширить и углубить его функционал. Выбрали меня для решения этой задачи. Вот сейчас в голове полный хаос. Пришлось учить по старому проекту и asp (теперь знаю, что линию webforms) и vb.net, хотя по инету вижу, что преобладающая масса пишет на С. Но признаюсь, что сам факт web программирования мне интересен и увлекателен. Да и в голове бардак постепенно по полкам раскладывается. И конечно появилось желание узнать и попробовать - что такое MVC. А со своей проблемой я разобрался. Как обычно - недоглядел нюанс. Старый проект он вроде и помогает, а иногда и столку сбивает. Ведь леплю по образу и подобию. Еще раз всем спасибо! И даже пассивному (который не хочет напрягаться) товарищу спасибо. Оказывается делать цветной текст просто (но муторно). Это вы еще о жава скрипт фрейворках не узнали .... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2016, 11:43 |
|
||
|
ListView и встроенные в него элементы управления
|
|||
|---|---|---|---|
|
#18+
Vlad5780Ребята, всем большое спасибо! Благодаря вам я узнал что в asp.net существуют два направления WebForms и MVC. Я не шучу. ... И конечно появилось желание узнать и попробовать - что такое MVC. ... Заодно рекомендую узнать и попробовать (и послушать - не только заезженное "Bang Bang - My Baby Shot Me Down") Nancy FX (присутствует в нугет). Очень симпатичная девочка... :) Это будет и ступенькой перед MVC. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2016, 16:02 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=39294299&tid=1355769]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
48ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 230ms |
| total: | 373ms |

| 0 / 0 |
