Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Вышла первая бета версия ASP.NET AJAX. Она доступна для скачивания с сайта http://ajax.asp.net. Вот что предлагается для скачивания: Microsoft ASP.NET AJAX v1.0 Beta "Core" Download. Здесь содержатся основные компоненты ASP.NET AJAX, которые будут официально поддерживаться Microsoft по стандартной лицензии (10 лет, 24/7/365). Сюда входят базовые типы, сетевой стэк, компонентная модель, базовые классы для Control Extender'ов, и серверная интеграция с ASP.NET (ScriptManager, UpdatePanel, Trigger, и т.п.)[/*] Microsoft ASP.NET AJAX CTP Beta "ValueAdd" Download. Сюда войдут дополнительные возможности, для которых не заявлена поддержка в версии ASP.NET AJAX 1.0. Тем не менее, они будут поддерживаться на основании отзывов от сообщества разработчиков и постепенно будут переходить в основной дистрибутив ASP.NET AJAX. [/*] ASP.NET AJAX Control Toolkit. Содержит набор из 28 элементов управления, разработанных на базе ASP.NET AJAX "Core". Можно присоединиться к разработке ASP.NET AJAX Control Toolkit на сайте CodePlex [/*] Sample Applications. Примеры использования ASP.NET Ajax.[/*] Microsoft AJAX Library Beta. Представляет из себя набор клиентских JavaScript компонентов, вынесенных в отдельный архив для разработчиков на платформах, отличных от Windows. [/*] Некоторые важные отличия Beta 1.0: оптимизация производительности и размера клиентских компонент Предыдущие версии ASP.NET AJAX CTP использовали один большой JavaScript файл, в котором содержались все клиентские компоненты. В бета-версии разработчики разделили клиентский код на несколько отдельных файлов и поработали над оптимизацией трафика библиотеки. ASP.NET Ajax "Core" содержит два JavaScript файла: MicrosoftAjax.js.gz файл содержит базовые клиентские типы, модель компонентов, сетевой стэк и сериализацию JSON, и клиентские сервисы (Profile/Authentication). Размер составляет 14.8К.[/*] MicrosoftAjaxWebForms.js.gz добавляет поддержку UpdatePanel и частичного рендеринга страницы. Размер составляет 6.4К.[/*] Эти файлы скачиваются один раз, после чего кэшируются браузером. Также, оптимизирован трафик вызываемый клиентскими запросами на сервер. Элементы управления типа UpdatePanel, UpdateProgress и так же содержимое Сontrol Toolkit по умолчанию генерируют теперь вместо xml-script 1-2 строки JavaScript. Также оптимизированы базовые типы JavaScript, большинство объявлений типов перемещено в прототипы с целью уменьшения занимаемого объема памяти. Поддержка браузера Safari В beta 1 заявлена полная поддержка Safari. Такде ведутся работы над обеспечению совместимости с браузером Opera, но в данной бете Opera не поддерживается. Улучшенная поддержка отладки Улучшена поддержка отладки клиентского JavaScript. [list=a] Вынос большинства клиентского кода из объявления по месту использования в прототипы позволяет более удобно использовать для отладки Visual Studio 2005 Script Debugger.[/*] Также, теперь для production и debug версий приложения используются разные версии JavaScript файлов. Production версия оптимизирована для достижения наивысшей производительности и минимального размера скачиваемых файлов, в то время как debug версия предоставляет максимум отладочной информации. В дебаг версии в функции введены дополнительные параметры для проверки корректности передаваемых аргументов и хранения стэка вызовов. Это позволяет упростить отладку клиентского кода.[/*] Обратите внимание, по умолчанию решение о версии клиентских скриптов принимается на основе директивы <compilation debug=”true|false” /> в файле web.config. Так что не забывайте устанавливать debug="false" при развертывании приложения в production. Есть и другие причины, по которым не следует забывать менять эту директиву. Также планируется поддержка метаданных ASP.NET AJAX для следующей версии Visual Studio, чтобы поддерживать IntelliSense и проверку синтаксиса в IDE. Также будет можно добавлять собственные метаданные, которые будут использованы для IntelliSense. Изменения в UpdatePanel Кроме поддержки Safari были добавлены следующие возможности: Клиентские обработчики событий, позволяющие с минимумом усилий писать клиентский код для кастомизации поведения UpdatePanel.[/*] Элементы управления внутри UpdatePanel могут вызывать как partial так и нормальные постбэки. Можно вообще запретить дочерним элементам управления вызывать postback.[/*] Вылидационные элементы управления и Wizard теперь могут работать внутри UpdatePanel.[/*] Теперь можно динамически создавать элемент управления UpdatePanel.[/*] Теперь можно использовать несколько элементов управления Animation и UpdateProgress, которые будут работать в зависимости от того, какой именно UpdatePanel обращается к серверу.[/*] Возможность декларативно указывать длительность ожидания перед тем, как показывать UpdateProgress. Это позволяет не показывать индикатор прогресса операции во время быстрых обращений к серверу.[/*] Поддержка стандартных возможностей OS для людей с ограниченными возможностями для сценариев использования UpdatePanel[/*] Элемент управления UpdateProgress на текущий момент находится в пакете "ValueAdd", т.е. его нужно будет ставить отдельно от ASP.NET AJAX "Core". В следующий версиях планируетмя переместить этот элемент управления в основной пакет ASP.NET AJAX "Core". Множество изменений в клиентской библиотеке Было сделано множество изменений в клиентской библиотеке, основываясь на отзывах пользователей. Внесены изменения с целью упростить и улучшить клиентские API. Кроме вынесения кода в прототипы изменения включают в себя: Упрощенная клиентская модель событий, теперь стало проще определять и использовать события на клиенте. Также события теперь определяются "по требованию" в целях увеличения производительности.[/*] Упрощенные типы компонент, поведения и элементов управления. Для использования API теперь необязательно инстанцировать связанные объекты, также как и в предыдущем случае использована семантика "по требованию" [/*] Стало проще работать и с клиентскими сетевыми функциями, в том числи и с асинхронными callback'ами. [/*] Также, упростилась работа с Memberhip и Profile API из клиентского JavaScript'а[/*] Улучшена совместимость с другими библиотеками AJAX Предыдущие версии ASP.NET AJAX использовали глобальную фнукцию $(), которая конфликтовала с некоторыми другими библиотеками AJAX (такими как Prototype и Scriptaculus). Она переименована в $get(), сделано несколько других переименований, и теперь все хорошо :) Лицензия на модификацию исходного кода Часто у разработчиков возникает необходимость вносить изменения в MS AJAX JavaScript Library. В связи с этим будет предоставленя лицензия, которая явно позволяет пользовательские изменения клиентских библиотек. API ScriptManager'а в Beta 1 позволяет пользовательские реализации/изменения во встроенных JavaScript библиотеках. Вдобавок к разрешению изменять библиотеки для пользовательских приложений лицензия предоставляет права на перераспротранение измененных библиотек (для этого требуется в частности изменять пространства имен для изменений во избежание конфликтов). Фактически мы имеем комбинацию 10-летней официальной поддержки и в то же время прав на распространение измененных версий библиотек, что несомненно является удобством для разработчиков, независимо от масштаба разрабатываемых проектов. Дальнейшие планы В связи с описанными изменениями текущий ASP.NET AJAX код конечно придется менять для работы с Beta 1. Если вы используете серверные возможности ASP.NET AJAX, изменения потребуются минимальные. В основном они связаны с изменением префикса <atlas:> на <asp:>, изменением синтаксиса триггеров для UpdatePanel и также небольшими изменениями с объявлением Extener'ов из ASP.NET Control Toolkit. Для миграции существует соответствующее руководство. Если же вы создавали клиентские классы и взаимодействовали непосредствено с компонентной моделью, потребуются более значительные изменения. Вообще, сами по себе изменения не сложные, но в связи с отсутствием ошибок компиляции приходится исправлять ошибки постепенно, итерациями, что конечно раздражает. Чтобы помочь мигрировать с CTP на Beta1, разработчики ASP.NET AJAX опубликовали подробный документ, перечисляющий внесенные изменения, и включающий примеры кода с примерами что было до и после миграции. Команда разработчиков ASP.NET AJAX будет отслеживать форумы в ближайшие несколько недель, чтобы помочь с миграцией и найденными багами. Если вы столкнетесь с багами, или у вас будут вопросы, публикуйте их на форумах ajax.asp.net. Также приветствуются отзывы, предложения по ASP.NET AJAX. Скорее всего API для ASP.NET Ajax 1.0 "Core" уже практически завершены и останутся без изменений. Разработчики планируют в течение этого года внести оставшиеся изменения и исправления и "заморозить" релиз. Также в планах следующая бета версия через несколько недель, учитывающая отзывы пользователей, затем Release Candidat, и затем уже окончательный релиз версии 1.0. По материалам блога Scott Guthrie.... << RSDN@Home 1.2.0 alpha rev. 0>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2006, 18:29 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Спасибо Евгений! Все что нужно и в одном месте на форуме. ____________________________________________________ ученье - свет, а не ученье - чуть свет и на работу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2006, 19:05 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
и, как я понял, ATLAS канул в лету и теперь его даже невозможно скачать...... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2006, 16:07 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, parapet, Вы писали: P>и, как я понял, ATLAS канул в лету и теперь его даже невозможно скачать... Это он и есть, только называется по-другому. Тут же уже писали и я (Официальные названия Atlas и планы развития и поставки) и mogadanez ([ANN] Microsoft ASP.NET AJAX)Кто людям помогает, тот тратит время зря. Хорошими делами прославиться нельзя! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2006, 16:20 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, Gollum, Вы писали: G>Это он и есть, только называется по-другому. я то понял что это он и есть, просто переделывать нужно приложения :)... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2006, 17:48 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
здесь http://ajax.asp.net/ajaxtoolkit/Walkthrough/AtlasToAspNetAjax.aspx все красиво написано, только я так понимаю, что нужно еще в web.config кое-что менять. Что конкретно — не указано :( и еще — читаю: - The ASP.NET AJAX assembly DLL has changed from Microsoft.Web.Atlas.dll to Microsoft.Web.Extensions.dll. This assembly is now strong-name signed and is installed in the GAC during installation. It is no longer necessary or supported to include the Microsoft.Web.Atlas.dll assembly in a Web project's local Bin folder. как теперь добавить ссылку на эту библиотеку?... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2006, 18:01 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, parapet, Вы писали: P>здесь http://ajax.asp.net/ajaxtoolkit/Walkthrough/AtlasToAspNetAjax.aspx все красиво написано, только я так понимаю, что нужно еще в web.config кое-что менять. Что конкретно — не указано :( Не понял, зачем что-то еще менять в веб.конфиг, как это следует из приведенной ссылки? P>как теперь добавить ссылку на эту библиотеку? Как обычно, только CopyLocal = falseЕжели череп прогрызла мышь — время забыть о былом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2006, 18:10 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, Gollum, Вы писали: G>Здравствуйте, parapet, Вы писали: P>>здесь http://ajax.asp.net/ajaxtoolkit/Walkthrough/AtlasToAspNetAjax.aspx все красиво написано, только я так понимаю, что нужно еще в web.config кое-что менять. Что конкретно — не указано :( G>Не понял, зачем что-то еще менять в веб.конфиг, как это следует из приведенной ссылки? раньше, когда создавался проект типа atlas, оно прописывало кучу всего в Web.config, например у меня в рабочем приложении есть такие строки: <add verb="*" path="atlasbatchcall.axd" type="Microsoft.Web.Services.MultiRequestHandler" validate="false"/> <add verb="*" path="atlasglob.axd" type="Microsoft.Web.Globalization.GlobalizationHandler" validate="false"/> теперь же, когда мы создаем проект типа AJAX, он также прописывает много чего в web.config. Внимание, вопрос — а не будет ли проблем если я в рабочем приложении для миграции на эту новую версию все сделаю как написано в вышеуказанной ссылке, не трогая web.config? P>>как теперь добавить ссылку на эту библиотеку? G>Как обычно, только CopyLocal = false угу, причем в списке .NET компонентов (когда делаешь в VS2005 Add Reference) его нет, пришлось искать кудв он инталлирован. Насколько я знаю, чтобы он появился в этом списке, нужно прописать папку с этой библиотекой в реестре. Жаль что это не делается при инсталляции... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2006, 18:17 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, parapet, Вы писали: P>Внимание, вопрос — а не будет ли проблем если я в рабочем приложении для миграции на эту новую версию все сделаю как написано в вышеуказанной ссылке, не трогая web.config? Раз не говорят, значит не надо. P>угу, причем в списке .NET компонентов (когда делаешь в VS2005 Add Reference) его нет, пришлось искать кудв он инталлирован. Насколько я знаю, чтобы он появился в этом списке, нужно прописать папку с этой библиотекой в реестре. Жаль что это не делается при инсталляции Думаю в финальной версии все будет. Можно им отправить на форум пожелание.Мне звонили с открытия пленума — я сказал им, что я не приду ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2006, 18:29 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
А что на счет FileUpload, какая на счет этого контрола политика? И как идеологически правильно вписывать в страницу с AJAX? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2006, 19:26 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
G>Вынос большинства клиентского кода из объявления по месту использования в прототипы позволяет более удобно использовать для отладки Visual Studio 2005 Script Debugger. ну не знаю, судя по приведенным ссылкам, это не для отладки, а для повышения производительности и гибкости кода, например типа рефлекшн лучше работает, в случае приватных мемберов как локальных переменных — к ним не достучаться вообще. G>Также, теперь для production и debug версий приложения используются разные версии JavaScript файлов. Production версия оптимизирована для достижения наивысшей производительности и минимального размера скачиваемых файлов, в то время как debug версия предоставляет максимум отладочной информации. В дебаг версии в функции введены дополнительные параметры для проверки корректности передаваемых аргументов и хранения стэка вызовов. Это позволяет упростить отладку клиентского кода. Это и в Atlas'е июньском было... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2006, 22:15 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, Gollum, Вы писали: Може подскажешь как теперь можно из скрипта вызвать модальный диалог (ModalPopupExtender)?... << RSDN@Home 1.2.0 alpha rev. 655>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 12:21 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, Gollum, Вы писали: Еще изменение по сравнению с June CTP: ScriptManager теперь должен находиться внутри серверной формы. в июньской версии можно было его засунуть в <head>, что в демках сами создатели показывали.... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 13:30 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
А че-то я не пойму где он теперь берет dll? Когда создаешь новый проект рядом с собой он ее не кладет. Я нашел единственную в \Program Files\Microsoft ASP.NET\ASP.NET 2.0 AJAX Extensions\v1.0.61025\Microsoft.Web.Extensions.dll, удалил ее а приложение все равно работает. Это я все к тому как теперь к хостеру закачать приложение с Ajax? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 13:54 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, sndanil, Вы писали: S>Здравствуйте, Gollum, Вы писали: S>Може подскажешь как теперь можно из скрипта вызвать модальный диалог (ModalPopupExtender)? насколько из скрипта? полностью, от создания до вызова или у нас на странице лежит <ajaxToolkit:ModalPopupExtender .... /> и просто нужно его уметь вызвать не только по нажатию TargetControlID, но и произвольного скрипта если так то делается это так (пример переделан из стандартного ModalPopup примера): <asp:ScriptManager id="ScriptManager" runat="server"></asp:ScriptManager> <script type="text/javascript"> var styleToSelect; function onOk() { $get('Paragraph1').className = styleToSelect; } function onClick() { $find("<%=ModalPopupExtender.ClientID%>").show() } </script> <p id="Paragraph1">Asingara to madra</p> <input type="button" value="open modal default" id="btnDef" runat=server /> <input type="button" value="open modal custom" id="btnCust" onclick="onClick();" /> <asp:Panel ID="Panel1" runat="server" CssClass="modalPopup" style="display:none"> <p>Choose the paragraph style you would like:</p> <p ><input type="radio" name="Radio" id="RadioA" onclick="styleToSelect = 'sampleStyleA';" checked="checked" /><label for="RadioA" class="sampleStyleA" style="padding:3px;">Sample paragraph text</label></p> <p ><input type="radio" name="Radio" id="RadioB" onclick="styleToSelect = 'sampleStyleB';" /><label for="RadioB" class="sampleStyleB" style="padding:3px;">Sample paragraph text</label></p> <p ><input type="radio" name="Radio" id="RadioC" onclick="styleToSelect = 'sampleStyleC';" /><label for="RadioC" class="sampleStyleC" style="padding:3px;">Sample paragraph text</label></p> <p ><input type="radio" name="Radio" id="RadioD" onclick="styleToSelect = 'sampleStyleD';" /><label for="RadioD" class="sampleStyleD" style="padding:3px;">Sample paragraph text</label></p> <p style="text-align:center;"> <asp:Button ID="OkButton" runat="server" Text="OK"></asp:Button> <asp:Button ID="CancelButton" runat="server" Text="Cancel"></asp:Button> </p> </asp:Panel> <ajaxToolkit:ModalPopupExtender ID="ModalPopupExtender" TargetControlID="btnDef" runat="server" PopupControlID="Panel1" BackgroundCssClass="modalBackground" DropShadow="true" OkControlID="OkButton" OnOkScript="onOk()" CancelControlID="CancelButton" />... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 14:11 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, Gollum, Вы писали: G>Предыдущие версии ASP.NET AJAX использовали глобальную фнукцию $(), которая конфликтовала с некоторыми другими библиотеками AJAX (такими как Prototype и Scriptaculus). Она переименована в $get(), сделано несколько других переименований, и теперь все хорошо :) еще важное переименование: $object() -> $find() синоним для Sys.Application.findComponent — метод для поиска компонент а не DOM элементов. кроме того, $get() не просто переименовался из $() — он теперь принимает два параметра. var $get = Sys.UI.DomElement.getElementById = function Sys$UI$DomElement$getElementById(id, element) { /// <param name="id" type="String"></param> /// <param name="element" type="Sys.UI.DomElement" optional="true" mayBeNull="true"></param> /// <returns type="Sys.UI.DomElement" mayBeNull="true"></returns> первый как и раньше, ID элемента, второй параметр элемент с которого начинать поиск.... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 14:11 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, Elast, Вы писали: E>А че-то я не пойму где он теперь берет dll? Когда создаешь новый проект рядом с собой он ее не кладет. Я нашел единственную в \Program Files\Microsoft ASP.NET\ASP.NET 2.0 AJAX Extensions\v1.0.61025\Microsoft.Web.Extensions.dll, удалил ее а приложение все равно работает. GAC... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 14:13 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
>GAC Это клево! А что на счет того как у хостера воспользоваться Ajax примочками если Ajax у него не установлен. Т.е. как руками прописать библиотеку? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 14:51 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, Elast, Вы писали: E>Это клево! А что на счет того как у хостера воспользоваться Ajax примочками если Ajax у него не установлен. Т.е. как руками прописать библиотеку? Поставить в reference в студии CopyLocal="true"Ежели череп прогрызла мышь — время забыть о былом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 14:59 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, Elast, Вы писали: >>GAC E>Это клево! А что на счет того как у хостера воспользоваться Ajax примочками если Ajax у него не установлен. Т.е. как руками прописать библиотеку? при Deploy проекта по моему эти сборки скопируются.... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 15:00 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
О, нашел файл web.config в папке с Microsoft.Web.Extensions.dll там оказывается все написано! У меня все работает, теперь попробую закачать к хостеру. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 15:01 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, sndanil, Вы писали: S>Здравствуйте, Gollum, Вы писали: S>Може подскажешь как теперь можно из скрипта вызвать модальный диалог (ModalPopupExtender)? см работа с AJAXContolToolkit на клиенте... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 15:28 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, mogadanez, Вы писали: спасибо, уже сам допетрил ... скажи пожалуйста, у меня начало появляться сообщение с ошибкой: --------------------------- Error --------------------------- A Runtime Error has occurred. Do you wish to Debug? Line: 420 Error: 'this._dropTargets' is null or not an object --------------------------- Yes No --------------------------- происходит при перемещении на другую страницу ... падает где-то в недрах AjaxControlToolkit.IEDragDropManager что это может быть?... << RSDN@Home 1.2.0 alpha rev. 655>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 15:34 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, sndanil, Вы писали: S>происходит при перемещении на другую страницу ... S>падает где-то в недрах AjaxControlToolkit.IEDragDropManager S>что это может быть? Это значит что используется DragDrop компонент, у которого не инициализирован мембер _dropTargets unregisterDropTarget : function(dropTarget) { this._unwireDropTargetEvents(dropTarget); this._dropTargets .remove(dropTarget); } надо смотреть CallStack откуда он приходит в этот метод. вообще unregisterDropTarget вызывается из dispose (который логично вызывается при переходе на другую страницу), но там стоит проверка dispose : function() { if(this._dropTargets) { for (var i = 0; i < this._dropTargets; i++) { this.unregisterDropTarget (this._dropTargets[i]); } this._dropTargets = null; } AjaxControlToolkit.IEDragDropManager.callBaseMethod(this, 'dispose'); }... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 15:50 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, mogadanez, Вы писали: определил, что эта фигня вылазит, когда на странице лежит более одного DragPanelExtender-а, причем у них все правильно установлено (все что нужно перетаскивается) ... их просто два ...можешь че-нить подсказать? ЗЫ: блин, они и из примеров убрали одну из панелей, наверное что бы только один экстендер на странице лежал ...... << RSDN@Home 1.2.0 alpha rev. 655>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 16:15 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, sndanil, Вы писали: S>Здравствуйте, mogadanez, Вы писали: S>определил, что эта фигня вылазит, когда на странице лежит более одного DragPanelExtender-а, причем у них все правильно установлено (все что нужно перетаскивается) ... их просто два ...можешь че-нить подсказать? Ошибку подтверждаю. Видимо баг, надо написать, чтобы исправили до релиза. S>ЗЫ: блин, они и из примеров убрали одну из панелей, наверное что бы только один экстендер на странице лежал ... в июньской версии все решалось по другому. был один DragPanelExtender, и для него было несколько DragPanelExtenderProperties внутри. что то они намудрили теперь.... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 16:30 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, mogadanez, Вы писали: теперь еще и AutoCompleteExtender не могу заставить работать ... вот код страницы ... <%@ Register TagPrefix="ajaxPreview" Namespace="Microsoft.Web.Preview.UI.Controls" Assembly="Microsoft.Web.Preview" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head id="Head1" runat="server"> </head> <body> <form id="form1" runat="server" defaultfocus="UserNameTextBox"> <asp:ScriptManager ID="MainScriptManager" runat="server" /> User name: <asp:TextBox ID="UserNameTextBox" runat="server" Width="300px" style="position: absolute; left:100px" AutoCompleteType="Disabled" ></asp:TextBox><br /><br /> Password: <asp:TextBox ID="PasswordTextBox" runat="server" Width="300px" TextMode="Password" style="position: absolute; left:100px" ></asp:TextBox><br /><br /> <asp:Button ID="LoginButton" runat="server" Text="Log In" OnClick="LoginButton_Click" style="position: absolute; left:355px; width: 75px;" /> <ajaxPreview:AutoCompleteExtender ID="extSearchAutoCompleteExtender" runat="server" MinimumPrefixLength="1" EnableCaching=false Visible=true ServicePath="~/Services/LoginsSearchService.asmx" ServiceMethod="GetAutoCompleteList" TargetControlID="UserNameTextBox" /> </form> </body> </html> вот сервис ... [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [Microsoft.Web.Script.Services.ScriptService] public class LoginsSearchService : System.Web.Services.WebService { public LoginsSearchService () { //Uncomment the following line if using designed components //InitializeComponent(); } [WebMethod] [Microsoft.Web.Script.Services.ScriptMethod] public string[] GetAutoCompleteList(string PrefixText, int count) { .... } } ставлю в отладчике бряк, так он в него даже не заходит ... и на странице никаких движений нет ... раньше соответственно все работало :( ... чего я не правильно сделал ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 18:36 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, sndanil, Вы писали: S>Здравствуйте, mogadanez, Вы писали: S>теперь еще и AutoCompleteExtender не могу заставить работать ... Похоже на баг http://blogs.msdn.com/sburke/archive/2006/10/21/hint-components-that-use-web-services-with-asp-net-ajax-v1-0-beta.aspx написано что надо вынести _временно_ этот метод в ASPX страницу.... :xz: :xz: и оставить ServicePath пустым, но AutoCompleteExtender не дает сделать ServicePath пустым ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2006, 21:11 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Добрый вечер,помогите плиз. Локально у меня всё на компе работает, поставил ASPAJACS, сделал тройку CascadingDropDown, всё работает, а вот на пробном хостинге http://europe.webmatrixhosting.net не хочет ругаеться: Parser Error Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately. Parser Error Message: Unknown server tag 'asp:UpdatePanel'. Source Error: Line 51: <td> Line 52: Line 53: <asp:UpdatePanel ID="UpdatePanel1" runat="server"> Line 54: <ContentTemplate> Line 55: <table> Что с этим делать?може тпоможите справиться.belka ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2006, 00:03 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Извините за беспокойство,разобрался.Забыл новый web.config на хост залить. Теперь работает. За web2 будущее!belka ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2006, 00:26 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Извините за беспокойство,разобрался.Забыл новый web.config на хост залить. Теперь работает. За web2 будущее!belka ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2006, 00:26 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Извините за беспокойство,разобрался.Забыл новый web.config на хост залить. Теперь работает. За web2 будущее!belka ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2006, 00:26 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, mogadanez, Вы писали: ну подебажил я полчасика новые скрипты... запрос он делает, но тело посылает как JSON строку, а назад ее не разбирает, на сервере и не передает параметры сервису. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2006, 00:29 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, sndanil, Вы писали: S>Здравствуйте, mogadanez, Вы писали: S>теперь еще и AutoCompleteExtender не могу заставить работать ... пока можешь попробовать адаптировать альтернативный автокомплит http://infinitiesloop.blogspot.com/2006/05/atlas-smart-auto-completion.html он не использует вебсервиса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2006, 00:34 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, mogadanez, Вы писали: спасибо, будем ждать следующих версий ... подскажи пожалуйста еще про работу с селектами в IE6, в случае если их использовать на модальных диалогах ... во первых при выводе модального диалога если на странице был селект, то он скрывается, во вторых если на диалоге есть селект и диалог перетаскивается, то наичинаются косяки, селекты бегут впереди диалога ... это дело будет исправляться или я не умею их готовить? ЗЫ: в IE7 вышеописаных проблем не наблюдалось ...... << RSDN@Home 1.2.0 alpha rev. 655>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2006, 11:12 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, sndanil, Вы писали: S>Здравствуйте, mogadanez, Вы писали: Подожди ждать следующих версий. :) Я победил его. как полезно бывает иногда поспать, пришел на работу — 5 минут и все заработало. сначала о том как я обнаружил: 1. решил проверить вообще не работают сервисы или только в автокомплите. 2. поместил на твою страничку такой кусочек. <script language="javascript"> function onClick() { SearchService.GetAutoCompleteList("a",10, function(a1){alert(a1);} ); } </script> <asp:ScriptManager ID="MainScriptManager" runat="server" > <Services> <asp:ServiceReference Path="~/Services/SearchService.asmx" /> </Services> </asp:ScriptManager> <input type="button" id="btn" value="custom call" onclick="onClick();" /> 3. запускаю работает :) вообще после этого уже стоило внимательно изучить HttpTrace но я вчера его посмотрел бегло, и не увидел разницы. Увидев что там хоть чтото посылается пошел дебажить — а зря. сегодня посмотрел на Http трейс внимательно кнопка: {" P refixText":"a","count":10} AutoComplete: {" p refixText":"a","count":10} в том же трейсе сообщение об ошибке @_Error(false,"Invalid web service call, missing value for parameter: \' P refixText\'. ну и в самом сервисе думаю уже догадались: public string[] GetAutoCompleteList(string P refixText, int count) так что поменяв параметр PrefixText на prefixText все заработало. дебажить чтобы найти где точно большая буква в маленькую превращается мне лень. но на их форум чиркнул. S>спасибо, будем ждать следующих версий ... S>подскажи пожалуйста еще про работу с селектами в IE6, в случае если их использовать на модальных диалогах ... во первых при выводе модального диалога если на странице был селект, то он скрывается, во вторых если на диалоге есть селект и диалог перетаскивается, то наичинаются косяки, селекты бегут впереди диалога ... это дело будет исправляться или я не умею их готовить? Попап это не из самого Ajax ASP.NET это ControlToolkit. багов там тьма. Да и это в общем то отдельный проект, в комманду разработчиков которого можно вступить. Призываю активно писать туда баги если таковые находятся. От feedback'a зависит насколько лучше они смогут сделать ControlToolkit.... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2006, 13:18 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, mogadanez, Вы писали: Огромное тебе человеческое спасибо. M>Попап это не из самого Ajax ASP.NET это ControlToolkit. багов там тьма. Да и это в общем то отдельный проект, в комманду разработчиков которого можно вступить. Призываю активно писать туда баги если таковые находятся. От feedback'a зависит насколько лучше они смогут сделать ControlToolkit. тут, как раз мне не понятно, баг это или нет ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2006, 15:17 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
S>тут, как раз мне не понятно, баг это или нет ... Сделай reproducable примерчик, посмотрю, на словах трудно понять как это выглядит... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2006, 15:24 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, mogadanez, Вы писали: M>Сделай reproducable примерчик, посмотрю, на словах трудно понять как это выглядит <select size=10> <option>asdasdasd</option> <option>asdasdasd</option> <option>asdasdasd</option> <option>asdasdasd</option> <option>asdasdasd</option> </select> <asp:Panel ID="Panel1" runat="server" Style="background-color:Gray" Width="400px" Height="100px"> <asp:Panel BorderStyle="Solid" BorderWidth="2px" BorderColor="black" ID="Panel2" runat="server" Width="100%" Height="20px"> <div style="cursor:move;">Drag me</div> </asp:Panel> <select size=5> <option>asdasdasd</option> <option>asdasdasd</option> <option>asdasdasd</option> <option>asdasdasd</option> <option>asdasdasd</option> </select> <input type=button value=Cancel id=cancel runat=server /> </asp:Panel> <ajaxToolkit:DragPanelExtender ID="DragPanelExtender12" runat="server" TargetControlID="Panel1" DragHandleID="Panel2" /> <asp:LinkButton ID="LinkButton" runat="server" Text="Show modal" ></asp:LinkButton> <ajaxToolkit:ModalPopupExtender runat="server" ID="Popup" TargetControlID="LinkButton" PopupControlID="Panel1" BackgroundCssClass="modalBackground" CancelControlID=cancel /> Получается, при выводе диалога, скрывается первый селект и при перетаскивании диалога, селект, который находится в диалоге "бежит" впереди диалога и оставляет за собой шлейф. Все это проявляется в IE6, в IE7 все работает, как надо. Вот более усугубленный пример, выводятся одновременно два диалога, селекты пропадают не тока на странице, но и в обоих диалогах: <select size=10> <option>asdasdasd</option> <option>asdasdasd</option> <option>asdasdasd</option> <option>asdasdasd</option> <option>asdasdasd</option> </select> <asp:Panel ID="Panel1" runat="server" Style="background-color:Gray" Width="400px" Height="100px"> <asp:Panel BorderStyle="Solid" BorderWidth="2px" BorderColor="black" ID="Panel2" runat="server" Width="100%" Height="20px"> <div style="cursor:move;">Drag me</div> </asp:Panel> <select size=5> <option>asdasdasd</option> <option>asdasdasd</option> <option>asdasdasd</option> <option>asdasdasd</option> <option>asdasdasd</option> </select> <input type=button value=ShowMore id=showMore runat=server /> <input type=button value=Cancel id=cancel runat=server /> </asp:Panel> <asp:Panel ID="Panel3" runat="server" Style="background-color:Gray" Width="400px" Height="100px"> <asp:Panel BorderStyle="Solid" BorderWidth="2px" BorderColor="black" ID="Panel4" runat="server" Width="100%" Height="20px"> <div style="cursor:move;">Drag me</div> </asp:Panel> <select size=5> <option>asdasdasd</option> <option>asdasdasd</option> <option>asdasdasd</option> <option>asdasdasd</option> <option>asdasdasd</option> </select> <input type=button value=Cancel id=Button2 runat=server /> </asp:Panel> <ajaxToolkit:DragPanelExtender ID="DragPanelExtender12" runat="server" TargetControlID="Panel1" DragHandleID="Panel2" /> <ajaxToolkit:DragPanelExtender ID="DragPanelExtender1" runat="server" TargetControlID="Panel3" DragHandleID="Panel4" /> <asp:LinkButton ID="LinkButton" runat="server" Text="Show modal" ></asp:LinkButton> <ajaxToolkit:ModalPopupExtender runat="server" ID="Popup" TargetControlID="LinkButton" PopupControlID="Panel1" BackgroundCssClass="modalBackground" CancelControlID=cancel /> <ajaxToolkit:ModalPopupExtender runat="server" ID="ModalPopupExtender1" TargetControlID="showMore" PopupControlID="Panel3" BackgroundCssClass="modalBackground" CancelControlID=Button2 /> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2006, 16:14 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, sndanil, Вы писали: S>Здравствуйте, mogadanez, Вы писали: M>>Сделай reproducable примерчик, посмотрю, на словах трудно понять как это выглядит Ок, пасиб. 1. то что в первом примере "прячется" селект — относительно не баг. они это делают осознано, иначе при наведении на этот селект твоего попапа — он бы просвечивал сквозь него. это Known Issue. Почему относительно — потому что можно реализовать диалог по другому. — обернув его в iframe( динамически ). все равно реализация у них разная для DragPanel'и. — либо коль уж это только для IE реализация можно и в popup объект обернуть. В IE7 просто уже нет проблемы "просвечивания" select'a — поэтому их и не надо прятать. — ну а если уж прятать, а бы на месте спрятонного selecta рисовал бы похожий статический DIV. 2. Впереди бегущий на мой взгяд баг. уж очень забавно смотрится на тормозящей машине и если очень быстро мышкой двигать. 3. А пропадание внутри попапа при открытии второго — в общем то связано с пунктом 1. т.е. наверное так задумано, но решение не красивое. я бы написал Feature Request.... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2006, 17:25 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, mogadanez, Вы писали: M> — обернув его в iframe( динамически ). все равно реализация у них разная для DragPanel'и. а это как? M> — либо коль уж это только для IE реализация можно и в popup объект обернуть. В IE7 просто уже нет проблемы "просвечивания" select'a — поэтому их и не надо прятать. еще бы FF фотелось бы ... M> — ну а если уж прятать, а бы на месте спрятонного selecta рисовал бы похожий статический DIV. дык а в диве чего рисовать? M>3. А пропадание внутри попапа при открытии второго — в общем то связано с пунктом 1. т.е. наверное так задумано, но решение не красивое. я бы написал Feature Request. кстати, а что ты думаешь по поводу доступности первого диалога, в то время когда показывается второй? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2006, 18:43 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, sndanil, Вы писали: S>Здравствуйте, mogadanez, Вы писали: M>> — обернув его в iframe( динамически ). все равно реализация у них разная для DragPanel'и. S>а это как? что именно как ? как обернуть или как реализация разная? по реализации, есть в тулките файлик Сompat\DragDrop\DragDropScripts.js в нем есть общий интерфейс и реализации GenericDragDropManager IEDragDropManager по поводу оборачивания, динамически создается iframe, получается его document, и туда пишется через document.write у нас сделано на Iframe'ах — работает везде. одно отличие содержимое у нас — отдельная страница. но для такой махины как AJAX ASP.NET это не проблема такой кусочек поддержать. M>> — либо коль уж это только для IE реализация можно и в popup объект обернуть. В IE7 просто уже нет проблемы "просвечивания" select'a — поэтому их и не надо прятать. S>еще бы FF фотелось бы ... для FF будет GenericDragDropManager, он и так нормально работает. M>> — ну а если уж прятать, а бы на месте спрятонного selecta рисовал бы похожий статический DIV. S>дык а в диве чего рисовать? то что показано в селекте сейчас. построчно скопировать все элементы, и отскролить на столько же сколько и селект. M>>3. А пропадание внутри попапа при открытии второго — в общем то связано с пунктом 1. т.е. наверное так задумано, но решение не красивое. я бы написал Feature Request. S>кстати, а что ты думаешь по поводу доступности первого диалога, в то время когда показывается второй? так они же не модальные, это просто DragPanel... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2006, 21:18 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
M>>>3. А пропадание внутри попапа при открытии второго — в общем то связано с пунктом 1. т.е. наверное так задумано, но решение не красивое. я бы написал Feature Request. S>>кстати, а что ты думаешь по поводу доступности первого диалога, в то время когда показывается второй? M>так они же не модальные, это просто DragPanel а ... извини, я понял о чем ты ... Это однозначно баг причем можно добиться чтобы после закрытия последнего попапа на основной странице Select не востановился... =)) исходная картинка 1. открываем первый диалог 2. в нем жмем Show More 3. сдвигаем второй туда где пропал Select с основной страницы 4. в первом жмем Cancel 5. Selectы появились :) . Наглядно видно почему они их прячут: 6. Жмем Cancel 7. Select'ы опять попрятались :) ... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2006, 21:45 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Джентельмены, кто-нибудь разбирался — насколько легко заставить UpdatePanel отправлять только свое состояние на сервер, а не всю форму вместе с ViewState'ом страницы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2006, 14:03 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, mogadanez, Вы писали: M>по поводу оборачивания, динамически создается iframe, получается его document, и туда пишется через document.write спасибо, но боюсь мы не переживем переделки на ифрэймы ... уже достаточно много диалогов сделали ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2006, 14:05 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, sndanil, Вы писали: S>Здравствуйте, mogadanez, Вы писали: M>>по поводу оборачивания, динамически создается iframe, получается его document, и туда пишется через document.write S>спасибо, но боюсь мы не переживем переделки на ифрэймы ... уже достаточно много диалогов сделали ... не.. я не вам предлагаю, предложение было чтобы это делал IEDragDropManager, вместо того чтобы прятать селекты, он мог бы создавать iframe и туда твой контет сливать.... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2006, 14:08 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, <Аноним>, Вы писали: А>Джентельмены, кто-нибудь разбирался — насколько легко заставить UpdatePanel отправлять только свое состояние на сервер, а не всю форму вместе с ViewState'ом страницы? тогда потеряется основная прелесть UpdatePanel... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2006, 14:26 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, mogadanez, Вы писали: M>Здравствуйте, <Аноним>, Вы писали: А>>Джентельмены, кто-нибудь разбирался — насколько легко заставить UpdatePanel отправлять только свое состояние на сервер, а не всю форму вместе с ViewState'ом страницы? M>тогда потеряется основная прелесть UpdatePanel Программист положил UpdatePanel на форму и все заработало в ajax-стиле? :) А если хочется другую прелесть — минимальный трафик между клиентом-сервером, максимальная скорость? Тогда лучше такого подхода ничего больше пока нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2006, 15:13 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
M>>тогда потеряется основная прелесть UpdatePanel Кэр>Программист положил UpdatePanel на форму и все заработало в ajax-стиле? :) Кэр>А если хочется другую прелесть — минимальный трафик между клиентом-сервером, максимальная скорость? минимальный трафик достигается ценой большого количества узкозаточенного JS кода. как правило для каждой формы свой код( естественно с некоторой общей базой ). пример: есть сложная форма, при изменении поля A меняются В,С,D; при изменении E меняются F,G,H самый простой способ заслать всю форму на сервер, и получит diff, в виде отрендеренного html кода, который подставляется в исходную форму. примерно так и работает UpdatePanel. причем такой способ довольно универсален. другой способ — более сложный. т.е. для приведенной выше фоормы для обновления полей В,С,D мы должны послать только данные поля A ( ну или еще других, но по минимуму которые нужны ), и обратно присылаются только нужные данные в JSON формате. что посылать и как разбирать ответ — решает прикладной клиентский код. понятно что он пишется под каждую страницу (плюс/минус) отдельно. тут есть свои проблемы, например при последующем постбеке, во вьюстейте могут оказаться старые данные, но это ( по крайней мере частично) решается отказом от Вьюстейта в пользу ControlState. который передается в AJAX запросах. у нас используется подход близкий ко второму.... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2006, 15:41 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, mogadanez, Вы писали: M>минимальный трафик достигается ценой большого количества узкозаточенного JS кода. как правило для каждой формы свой код( естественно с некоторой общей базой ). M>пример: есть сложная форма, при изменении поля A меняются В,С,D; при изменении E меняются F,G,H M>самый простой способ заслать всю форму на сервер, и получит diff, в виде отрендеренного html кода, который подставляется в исходную форму. примерно так и работает UpdatePanel. M>причем такой способ довольно универсален. M>другой способ — более сложный. т.е. для приведенной выше фоормы для обновления полей В,С,D мы должны послать только данные поля A ( ну или еще других, но по минимуму которые нужны ), и обратно присылаются только нужные данные в JSON формате. что посылать и как разбирать ответ — решает прикладной клиентский код. понятно что он пишется под каждую страницу (плюс/минус) отдельно. тут есть свои проблемы, например при последующем постбеке, во вьюстейте могут оказаться старые данные, но это ( по крайней мере частично) решается отказом от Вьюстейта в пользу ControlState. который передается в AJAX запросах. M>у нас используется подход близкий ко второму. Есть подозрение, что чаще всего можно скоратить требуемый объем данных на сервере до нескольких параметров и только их посылать на сервер — например как вызов web-service. И принимать обратно часть страницы сгенеренной на сервере по всем правилам, с применением applciation theme и прочих, неочевидных для клиента подробностей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2006, 15:55 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
M>>у нас используется подход близкий ко второму. Кэр>Есть подозрение, что чаще всего можно скоратить требуемый объем данных на сервере до нескольких параметров и только их посылать на сервер — например как вызов web-service. И принимать обратно часть страницы сгенеренной на сервере по всем правилам, с применением applciation theme и прочих, неочевидных для клиента подробностей. приложение изначально должно писаться с учетом этого. т.е. в CodeBehind почти не должно быть никакой логики. например было у нас НЕ ajax приложение, на постбек от какого то контрола проходил цикл страницы со всеми стадиями. PageInit, PageLoad, событие контрола, PreRender. если мы ставим UpdatePanel — то у нас ничего из этого не меняется. в этом главный кекс. в случае переделки на сервис, вся логика в PageLoad, обработчиках и т.д. идет лесом. нужно довольно много переделок, и в результате мы придем почти к тому варианту что я описывал. беда UpdatePanel — в том что изначально в ASP.NET не было концепции ControlState. а все сваливалось в одну большуй кучу ViewState... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2006, 16:23 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
M>приложение изначально должно писаться с учетом этого. т.е. в CodeBehind почти не должно быть никакой логики. M>например было у нас НЕ ajax приложение, на постбек от какого то контрола проходил цикл страницы со всеми стадиями. M>PageInit, PageLoad, событие контрола, PreRender. если мы ставим UpdatePanel — то у нас ничего из этого не меняется. в этом главный кекс. M>в случае переделки на сервис, вся логика в PageLoad, обработчиках и т.д. идет лесом. нужно довольно много переделок, и в результате мы придем почти к тому варианту что я описывал. M>беда UpdatePanel — в том что изначально в ASP.NET не было концепции ControlState. а все сваливалось в одну большуй кучу ViewState Да, я согласен. Просто я имел ввиду именно разработку нового приложения или существенный рефакторинг старого. Кстати, у меня еще были идеи развить UpdatePanel, переопределив ему сохранение и загрузку состояния (вместе с дочерними контролами), сохранять это состояние отдельно от общего ViewState и потом на сервер гонять только его. Но руки пока не дошли проверить реализуемость этого подхода. Хотя насколько я понимаю, у вас уже было реализовано что-то похожее? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 06:50 |
|
||
|
[ANN] ASP.NET AJAX beta 1
|
|||
|---|---|---|---|
|
#18+
M>>беда UpdatePanel — в том что изначально в ASP.NET не было концепции ControlState. а все сваливалось в одну большуй кучу ViewState Кэр>Да, я согласен. Просто я имел ввиду именно разработку нового приложения или существенный рефакторинг старого. Кэр>Кстати, у меня еще были идеи развить UpdatePanel, переопределив ему сохранение и загрузку состояния (вместе с дочерними контролами), сохранять это состояние отдельно от общего ViewState и потом на сервер гонять только его. Но руки пока не дошли проверить реализуемость этого подхода. Хотя насколько я понимаю, у вас уже было реализовано что-то похожее? не совсем, у нас есть концепция ControlState но не связанная с UpdatePanel( мы пока на ASPNET 1.1 сидим :( )... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2006, 14:27 |
|
||
|
|

start [/forum/topic.php?all=1&fid=18&tid=1388080]: |
0ms |
get settings: |
6ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
51ms |
get topic data: |
9ms |
get forum data: |
6ms |
get page messages: |
83ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 405ms |

| 0 / 0 |
