26 января 2013 г.

Использование Google Chart Tools в ASP.Net MVC

Вам приходилось рисовать графики и диаграммы на разрабатываемых сайтах? Мне, например, приходилось. Как всегда, в этом деле спасают разнообразные сторонние решения в виде плагинов и фреймворков.
Проблема в том, что до сих пор я не знал ни одного достойного варианта, который предоставлял бы широкий функционал, был прост в интеграции, и, конечно же, был бесплатным. Раньше можно было жить с бесплатными контролами диаграмм от Telerik, но поскольку лавочка прикрылась, а точнее переросла в Kendo DataViz, который стоит немалых денег, то пришлось искать друге решение.

Я был безмерно удивлен и счастлив, когда узнал, что сам Google предоставляет всем желающим API для визуализации данных. Этот чудный продукт называется Google Chart Tools, и включает в себя полный набор всего необходимого, с множеством вариаций графиков, с примерами, документацией и прочими плюшками.

Сегодня мы познакомимся с Google Chart Tools, и попробуем "внедрить" а наше ASP.NET MVC приложение графики для отображения данных.

Создание глобальных расширений (helpers) в ASP.Net MVC, Часть 2

В предыдущей статье мы научились создавать и использовать простые хелперы в представлениях. То были небольшие расширения, которые избавляли нас от необходимости частенько повторять в представлениях фактически один и тот же кусок разметки с данными.

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

Представьте, что у вас есть некий проект - подобие веб-витрины. На одной странице вам нужно рисовать таблицу с категориями товаров, на другой - таблицу с товарами, на третьей - такую же таблицу еще с чем-то. На всех этих страницах таблицы имеют одинаковую структуру, и отличаются лишь количеством ячеек по горизонтали (для категорий нужно больше, а для товаров меньше). Кроме того, в ячейке таблицы товаров выводится блок "О товаре", а в таблице категорий - блок "О категории". Проблема, которую мы постараемся решить - дублирование на всех страницах кода для разметки таблицы, и сопоставление ее ячеек с нужными данными.

Сегодня мы создадим хэлпер для отображения на странице таблицы с какими-либо данными. Такой хэлпер должен уметь строить таблицы для любых обьектов, изменять количество столбцов в зависимости от настроек, а также для вывода данных использовать стороннюю разметку.

23 января 2013 г.

Создание глобальных расширений (helpers) в ASP.Net MVC, Часть 1

Давным-давно, в этом блоге я описывал несколько способов создания ссылки в виде изображения. Помнится, тогда я еще думал: "А ведь было бы круто, если бы в MVC имелся стандартный хэлпер, который наряду с ActionLink создавал бы ссылку в виде картинки, а не текста. Такой себе ActionImageLink!".

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

Сегодня мы научимся создавать глобальные расширения, и использовать их в представлениях нашего приложения.

22 января 2013 г.

Создание Razor-расширений (хэлперов) в представлениях ASP.Net MVC

Мне очень нравится движок представления Razor. Вначале, конечно же, было странно как-то, но теперь уже и не знаю, как можно писать по-другому.

Помимо всех прелестей, Razor позволяет также создавать свои хэлперы в рамках одного представления. Зачем это нужно? Например, чтобы использовать один и тот же кусок разметки несколько раз в одном представлении. Да, для этого можно использовать PartialView. Хэлпер - же является более простым, локальным решением. Главное его преимущество перед PartialView - это быстрота отрисовки, недостаток - конкретный хэлпер виден только в рамках текущего представления.

Итак, сегодня мы научимся создавать Razor-расширения внутри представлений, и также посмотрим, как и где это можно применять.