дерево ANET 2.0 .net 2.0 - PullRequest
       26

дерево ANET 2.0 .net 2.0

1 голос
/ 14 апреля 2009

Правильно, поэтому мне нужно создать веб-приложение в форме win asp.net 2.0. Я бы очень сильно предпочел 3.5 MVC. потому что это чище, стройнее, современнее и имеет больше смысла для меня. Я хорошо знаю 3.5 MVC и пришел из опыта работы с Rails, поэтому этот материал для веб-форм выглядит для меня немного грубым: P.

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

В Asp MVC я бы сделал что-то вроде создания партиала, представляющего один узел, и запускаемого JJuery AJAX действия контроллера, который отображает коллекцию этих партиалов (дочерних элементов), которая вставляется в innerHTML дочерних элементов целевого объекта.

AFAIC, в .net 2.0 мои варианты:

  1. Создание элемента управления Webforms, представляющего один узел. Используйте Asp AJAX для вызова метода codebehind, который recursivley добавляет элементы управления, представляющие дочерние элементы этого узла. Плюсы: хорошо вписывается в официальный формат ASP 2.0. Довольно легко. Минусы: веб-формы грубые (: p), и делает обновление этого сайта до 3.5 позже намного сложнее.

  2. Создайте метод веб-сервисов, который возвращает дочерние элементы в виде списка JSON, которые затем форматируются в HTML в javascript на стороне клиента, используя jQuery для запроса и форматирования. Плюсы : Скорость из-за низких накладных расходов с JSON. Более перспективно, так как json-webservices легко переходят на методы контроллера MVC. Минусы : Больше работы для развития. HTML в конечном итоге смешивается с клиентским javascript (потому что нет доступных шаблонов JSON / javascript), что отвратительно (IMHO).

  3. использовать сторонний веб-элемент управления. Плюсы : наименьшая работа (в лучшем случае). Минусы : нужно оценить, какой из них использовать. возможно, придется купить. Обучение / работа с контрольным API и т. Д.

  4. Как-то иначе?

Так что вы, ребята, думаете, лучший путь?

Ответы [ 2 ]

1 голос
/ 27 мая 2009

jstree.com

0 голосов
/ 14 апреля 2009

Я использовал вид дерева ComponentArt. Его было легко подобрать. Поддержка веб-сервисов в элементе управления в настоящее время отсутствует; однако, он позволяет вам запрашивать URL-адрес и ожидает простой XML-документ, который он преобразует в свои объекты на стороне клиента. Очень легко и быстро получить хороший и полностью функциональный пульт управления.

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

...