- PVSM.RU - https://www.pvsm.ru -
На просторах Интернета есть очень хороший Javascript фреймворк под названием qooxdoo. Наверное, многие знают о нем и видели его в действии. А если кто не знает, это фреймворк с большим количеством классов, в том числе отвечающих за UI. Подробности можно почитать и посмотреть там [1]. Хорош он всем, но при разработке ASP.NET приложений его использовать крайне сложно. Так было раньше. Теперь я рад поделиться новостью: появился новый проект, который позволяет просто и быстро создавать ASP.NET приложения с пользовательским интерфейсом на qooxdoo, при этом писать на javascript совсем не придется. Проект называется qxdotnet и распространяется под лицензией LGPL.
Главная идея проекта заключается в том, чтобы создать классы-обвертки на C# для всех основных классов qooxdoo, отвечающих за пользовательский интерфейс. Экземпляры этих классов-обверток генерирую javascript-код, который создает аналогичные объекты в браузере. Сообщения о событиях (нажатие на кнопку, ввод данных в текстовое поле) передаются на сервер через AJAX.
Иными словами, Вы просто создаете ASP.NET приложение, пишите на C# примерно следующий код:
btn = new qxDotNet.UI.Form.Button(); btn.Label = "push me"; root.Add(btn);
Далее запускаете приложение и видите свою кнопочку в браузере. Набор свойств и методов класса qxDotNet.UI.Form.Button почти такой же, как у javascript-ового класса qx.ui.form.Button. При нажатии на кнопку на сервер передается сообщение и вызывается соответствующее событие.
Исходники и пример можно скачать тут [2]. Для компиляции потребуется MS Visual Studio 2008. Можно использовать VS 2010, но потребуется конвертировать файлы решения.
Проект qxdotnet реализован как приложение для qooxdoo, поэтому для компиляции такого приложения (как и любого другого приложения для qooxdoo) потребуется исполнить ряд скриптов, написанных на Python-е. Для выполнения этих скриптов нужно, чтобы в системе был установлен ActivePython. Скачать можно тут [3]. Вызов Python-а производится самой VS во время компиляции решения.
Ну и третье, что потребуется для компиляции проекта, это qooxdoo 1.6 SDK. Его нужно скачать отсюда [4] и распаковать в папку рядом с файлом решения. Т.е. в итоге должно получиться в одной папке следующие папки и файлы: DemoApplication, qooxdoo-1.6-sdk, source, qxDotNet.sln…
Далее можно открыть файл решения qxDotNet.sln в VS, установить в качестве начального проект DemoApplication и запустить его. Код главной формы демо-приложения можно посмотреть в файле MainForm.cs.
В заключении стоит отметить, что, хотя проект находится на стадии Alpha, почти все элементы пользовательского интерфейса уже работают. Есть на что посмотреть и попробовать в действии.
Автор: zabolotnev
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/web-razrabotka/2233
Ссылки в тексте:
[1] там: http://qooxdoo.org
[2] тут: https://sourceforge.net/projects/qxdotnet/
[3] тут: http://www.activestate.com/activepython/downloads
[4] отсюда: http://downloads.sourceforge.net/qooxdoo/qooxdoo-1.6-sdk.zip
Нажмите здесь для печати.