Ни для кого уже не секрет, что 6го июля компания Microsoft расширила российские возможности для работы с Windows Azure и предоставила доступ к Preview-технологиям. Об одной из этих технологий я хочу рассказать в этом посте.
Сразу хочу сказать, что большая часть информации взята из официального мануала и адаптирована к восприятию на собственном примере. Оригинал написан на английском, так что русская версия не помешает.
Читать полностью »
Метка «asp.net mvc» - 8
Публикация сайта ASP.NET MVC в обновленный Windows Azure
2012-07-04 в 23:45, admin, рубрики: .net, asp.net mvc, azure, preview, windows azure, Облачные вычисления, разработка, метки: asp.net mvc, azure, preview, windows azureKnockout MVC — Сила Knockout.js для ASP.NET MVC
2012-06-21 в 3:32, admin, рубрики: .net, asp.net mvc, asp.net mvc 3, javascript, knockoutjs, mvvm, Веб-разработка, метки: asp.net mvc, asp.net mvc 3, javascript, knockoutjs, mvvmНа Хабре уже много писали про Knockout.js (раз, два, три, четыре, пять, видео). Для тех кто не в курсе, Knockout.js — это популярная JavaScript библиотека, позволяющая реализовать Model-View-View Model (MVVM) паттерн на клиенте. Освоить Knockout.js можно очень быстро — ведь есть система интерактивного обучения, куча живых примеров (можно потыкать и посмотреть исходный код) и прекрасная документация.
Очень часто Knockout.js используют в связке с ASP.NET MVC — ведь библиотека существенно упрощает написание клиентской логики. Однако, возникает много типичных проблем для клиент-серверной разработки: основную модель и часть логики её обработки приходится описывать как на клиенте (JavaScript), так и на сервере (C#/VB). Кроме того, есть рутинная часть, связанная с обращением клиента к серверным методам и передачи им модели для обработки. Но не стоит печалиться! Теперь у нас есть Knockout MVC — это .NET оболочка для Knockout.js, которая генерирует весь нужный JavaScript-код за нас. Нам остаётся только описать нашу модель на C# и в MVVM-стиле указать для каждого нужного html-элемента к какому свойству модели нужно привязаться (а можно указать и целые выражения — они будут транслированы в js). Таким образом, можно получить полноценное кроссбраузерное клиентское веб-приложение без единой строчки JavaScript!
Читать полностью »
ASP.NET MVC: Условная валидация на клиенте с использованием FluentValidation
2012-06-06 в 20:48, admin, рубрики: .net, asp.net mvc, validation, Песочница, метки: asp.net mvc, validationПередо мной стояла задача сделать условную валидацию для свойства модели в зависимости от значения другого свойства. Гугл говорит, что такая задача встречается довольно часто. Поэтому я решил поделиться тем, как я решил ее в своем проекте.Читать полностью »
Тренды мобильного веба и два подхода к построению мобильных приложений
2012-06-06 в 12:12, admin, рубрики: .net, ASP.NET, asp.net mvc, visual studio 2012, Блог компании Microsoft, Веб-разработка, Мобильный веб, тренды, метки: ASP.NET, asp.net mvc, visual studio 2012, мобильный веб, тренды
Одним из сильнейших трендов современного веба является мобильный веб — специальное представление сайтов для всего многообразия мобильных устройств, смартфонов, планшетов и так далее.
В этой статье рассматриваются современные тренды мобильного веба. Как быстро растет мобильный веб? Что ожидать от мобильного веба через пару лет? Как мобильное представление сайтов влияет на бизнес и интернет-магазины? Как обстоят дела с мобильными сайтами сегодня?
Целью статьи ставится так же ответить на вопрос о способах создания мобильных сайтов. Я рассмотрю два основных направления в процессе создания мобильных сайтов и то, как эффективные инструменты Visual Studio 2012 и ASP.NET MVC позволят вам реализовать любые задачи стоящие перед мобильным представлением сайтов.
Читать полностью »
Изучаем ASP .NET MVC: пишем свой Хабрахабр с инвайтами и кармой. Часть 2
2012-04-24 в 10:31, admin, рубрики: .net, ASP, метки: .net, asp.net mvc Здравствуйте, уважаемые читатели!
Сегодня мы продолжим изучать ASP MVC и наконец-то напишем свой первый код в реализации такого нелегкого проекта. Всех заинтересовавшихся и всех ожидавших вторую часть прошу под кат.
Читать полностью »
Шаблонизация в JavaScript с использованием Razor
2012-04-20 в 13:36, admin, рубрики: .net, asp.net mvc, html, javascript, msbuild, razor, метки: asp.net mvc, c++, html, javascript, msbuild, razor В силу всё большего и большего усложнения веб-приложений на стороне клиента, хочется иметь шаблонизаторы, которые работали бы прямо на клиенте. И таких средств, надо сказать, появилось не мало. Но так как я легких путей не ищу все они мне не нравятся, я решил сделать свой с блэкджеком и дамами лёгкого поведения (я так понял, на Хабре жестко карают и банят, если этой фразы нет в посте).
И вот я решил создать строготипизированный шаблонизатор на Razor. Читать полностью »
Изучаем ASP .NET MVC: пишем свой хабрахабр с инвайтами и кармой. Часть 1
2012-04-18 в 11:02, admin, рубрики: .net, ASP, метки: .net, asp.net mvcПриветствую уважаемые читатели!
Я давно хотел собрать воедино всю информацию, найденную мною по этому фреймворку в сети по частям и выделить в серию уроков-заметок. И вот с появлением свободного времени, занялся этим делом. Для большей наглядности хотелось бы выбрать интересную задачу для решения, и вот немного поразмыслив, решил написать свой хабрахабр, чем с вами и поделюсь.
Читать полностью »
Опубликовано видео докладов конференции WebProfessionals
2012-04-11 в 7:06, admin, рубрики: ASP.NET, asp.net mvc, cms, drupal, iis, metro ui, Visual Studio, webmatrix, webprofessionals, windows azure, Блог компании Microsoft, Веб-разработка, Облачные вычисления, метки: ASP.NET, asp.net mvc, cms, drupal, iis, metro ui, Visual Studio, webmatrix, webprofessionals, windows azureКонференция WebProfessionals – крупнейшая региональная конференция Microsoft, посвященная теме веб-разработки. Конференция прошла 3 апреля в городе Самара, собрав более 300 участников со всего региона и около 6000 онлайн-зрителей. В ходе конференции были обсуждены последние нововведения в стеке веб-технологий Microsoft: от решений на основе собственной архитектуры на базе IIS до облачных технологий на базе Windows Azure.
Важной частью конференции стали доклады о реальном применении технологий Microsoft на практике от крупных российских компаний. В ходе конференции были представлены Visual Studio 11 и другие инструменты разработки, решения от партнеров позволяющие создавать эффективные веб-проекты.
Мы рады сообщить, что видео докладов конференции уже доступно для свободного онлайн просмотра.
Вы можете просмотреть записи докладов по следующим ссылкам на сайте TechDays.ru:
Читать полностью »
Расширение функциональности элемента input type=”text” до уровня «ComboBox»
2012-03-19 в 5:53, admin, рубрики: asp.net mvc, jquery, jquery plugins, метки: asp.net mvc, jquery pluginsВведение
В сети существует огромное количество плагинов для реализации какого рода расширений. К сожалению (к счастью ?) все они (возможно я плохо искал ?), предлагают некое законченное решение в разметкой и стилями. Если Вам нужен только функционал, то этот плагин для Вас.
Идея
Расширить функциональность элемента до уровня combobox. Только функционал без разметки и стилей. Организовать взаимодействие стандартными способом.
Для запросов к серверу использовать get ajax запрос, передавая на вход значение элемента.
Настраивать элемент через атрибуты:
<input id="comboBox" data-options='{"url":"Home/Load","lengthText": 4,"timeWait":300 }' type="text" />
или
<input id="comboBox1" data-url="Home/Load" type="text" />
Где:
url – адрес сервиса
lengthText –минимальное количество символов после которого производится запрос (умолчание 3)
timeWait – время в мсек по истечении которого производится запрос (умолчание 300)
Оповещения разработчика о состоянии запроса организовать через систему событий.
query_start – старт запроса
query_end – окончание запроса
query_data – получение результата запроса
query_reset – сброс результатов
query_error – ошибка запроса
Обернуть все в плагин jQuery (v 1.7) — query()
$().ready(function () {
$("#comboBox")
.query()
.bind("query_data", function (e, data) {
// вывести куда то результат – например в <div id=”panel”/>
})
.bind("query_error", function (e, data) {
// сообщить об ошибке
})
.bind("query_reset", function () {
// очистить <div id=”panel”/>
})
.bind('query_start query_end', function (e) {
// как то показать что идет запрос – здесь меняем фон элемента
$(this).css({ backgroundColor: e.type == "query_start" ? "#fdf5e6" : "#FFF" });
});
});