Pull to refresh
  • by relevance
  • by date
  • by rating

ASP.NET MVC 3: подробный обзор нововведений

.NET *
image

Спустя более чем четыре месяца с момента выхода финальной версии фреймворка ASP.NET MVC 2, команда разработчиков рада представить первую предварительную версию ASP.NET MVC 3. Анонс и ссылку на загрузку можно найти здесь.

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

Совместимость и поддержка .NET Framework 4.0


В отличии от предыдущей версии, ASP.NET MVC 3 поддерживает только четвертую версию .NET Framework. Кроме того, компоненты разработчиков для интеграции в Visual Studio поддерживаются только для Visual Studio 2010 и Visual Web Developer Express 2010.

Фреймворк ASP.NET MVC 3 может быть установлен вместе с ASP.NET MVC 2, они могут использоваться отдельно друг от друга.

Читать дальше →
Total votes 77: ↑60 and ↓17 +43
Views 9.5K
Comments 33

Миграция приложений с ASP.NET MVC 2 на ASP.NET MVC 3 Preview 1

ASP *
Translation
Я только что закончил превью своего инструмента преобразования приложения ASP.NET MVC, чтобы поддерживать преобразование от ASP.NET MVC 2 к ASP.NET MVC 3.

Предыдущая версия приложения, которое преобразовывало с ASP.NET MVC 1.0 к ASP.NET MVC 2, доступна здесь.

Читать дальше →
Total votes 35: ↑22 and ↓13 +9
Views 2.2K
Comments 1

Быстрое создание прототипа веб приложения в ASP.NET MVC 3 с использованием MvcScaffolding

ASP *
Sandbox
В этой статье я бы хотел рассмотреть возможность быстрого создания функционального прототипа веб приложения на основе технологии ASP.NET MVC 3. Немного соприкоснувшись с «Ruby on Rails», я заинтересовался его возможностью Scaffolding-га т.е. быстрого способа генерации основного каркаса приложения. Это дает возможность разработчику сконцентрироваться на создании бизнес модели и получить функциональный прототип не тратя свое время на детали реализации, что очень важно в начале любого проекта. А существует что-либо подобное в ASP.NET MVC? И насколько это функционально, быстро, удобно и практично.
Я хотел бы рассмотреть это на конкретном примере, и в этом качестве предлагаю создать простой веб каталог товаров. В моем случае это будет каталог автозапчастей.
В качестве инструментов, я буду использовать следующие средства разработки и библиотеки.
  • MS Visual Studio 2010
  • ASP.NET MVC 3 – официальный релиз
  • NuGet – менеджер пакетов для Visual Studio
  • MvcScaffolding — генератор кода MVC на основе шаблонов
  • EFCodeFirst — новая возможность Entity Framework CPT5

Читать дальше →
Total votes 51: ↑39 and ↓12 +27
Views 6.6K
Comments 16

ASP.NET MVC: Привязка данных модели, которые содержат изображения

ASP *
Привязка данных(binding) является достаточно удобным средством ASP.NET MVC. Удобно оно в первую очередь тем, что позволяет скрыть реализацию преобразования данных между данными из модели и данными HTTP запроса.
В своих проектах я часто сталкиваюсь с необходимостью сохранять различные данные типа blob и image. В этой статье я бы хотел показать, как можно легко организовать и использовать привязку данных из модели, которые содержат различные изображения. Для примера я взял учебный проект MVC Music Store и решил его подправить — добавить возможность изменять изображение обложки музыкального альбома. При написании данной статьи, я использовал версию APS.NET MVC 3 и Razor.
Читать дальше →
Total votes 27: ↑20 and ↓7 +13
Views 8.5K
Comments 7

О том, почему мы будем использовать HTML(5) вместо Silverlight

Website development *
Translation
Недавно я провел исследование о том, какая технология создания пользовательского интерфейса будет наилучшим выбором для приложений, которые собирается создавать мой клиент в следующие несколько лет. Мой клиент – это команда .NET разработчиков, а это значит, что двигаться можно в двух основных направлениях: разработка с использованием стандартных веб-технологий или Silverlight. Когда необходимо рекомендовать одну технологию в противовес другой, то в идеале выбор должен быть основан на чем-то большем, чем на нескольких мнениях. Мы создали список технологий-кандидатов. После чего мы создали перечень критериев, связанных в категории. Всем критериям был назначен некоторый вес, и мы оценили каждый из них для всех технологий-кандидатов.
Читать дальше →
Total votes 94: ↑66 and ↓28 +38
Views 6.4K
Comments 93

Razor: вывод секций в мастер-страницах мастер-страниц

ASP *
Всем доброго времени суток. С недавних пор занимаюсь активной разработкой на ASP.NET MVC 3 & Razor «непростого» веб-приложения и вот сегодня наткнулся на проблему, которая опытными разработчиками, может быть, уже исследована и решена, но вот новичкам информация ниже, думаю и надеюсь, окажется полезной.

Описание проблемы


Пусть в приложении есть пара представлений: View.cshtml и ViewWithSide.cshtml, а ещё есть две мастер-страницы: Layout.cshtml и LayoutWithSide.cshtml, причём первая является мастер-страницей для второй. Как можно догадаться по именам файлов, XxxWithSide.cshtml добавляет в странице боковую панель, формат вывода которой определён в мастер странице, а внутренности — в представлении. В главной мастер-странице Layout помимо основной разметки определён вывод секции «navigation», которая задаётся в представлениях.

И вот когда в коде ViewWithSide определена секция «navigation», а в LayoutWithSide нет, потому что эта секция должна обрабатываться «следующей» мастер-страницей (Layout), то при попытке открыть ViewWithSide в приложении будет выдана ошибка: The following sections have been defined but have not been rendered for the layout page "~/Views/Shared/LayoutWithSide.cshtml": «navigation» (Секция «navigation» определена, но нигде не выведена в мастер-странице).

Идея решения этой проблемы довольно проста: нужно передать вывод этой секции «следующей» мастер-странице, а там пусть сами разбираются.
Как это решается и примеры кода есть подкатом
Total votes 11: ↑6 and ↓5 +1
Views 20K
Comments 5

Ciklum .NET Saturday – в Киеве уже в эту субботу

Ciklum corporate blog
14 мая, традиционно, компания Ciklum открывает двери для очередного субботника.

В этот раз мы проводим Ciklum .NET Saturday в нашем Skypoint с живописной панорамой Киева на 20 этаже в киевском офисе компании по адресу ул.Н.Амосова, 12.

На эту встречу компания Ciklum приглашает разработчиков приложений под .NET. Вход на субботник -свободный для зарегистрированных участников

Подробности под хабракатом
Total votes 23: ↑15 and ↓8 +7
Views 3.7K
Comments 13

Declarative HTML Helpers

ASP *

@functions @helpers


Большинство хелперов в asp.net mvc 3 это методы-расширения класса System.Web.Mvc.HtmlHelper.
Однако не всегда удобно создавать отдельный статический класс для 2-3 хелперов необходимых в одной вьюшке. И совсем неудобно создавать хелперы возвращающие большие блоки html-кода: ни подсветки синтаксиса, ни интеллисенса, ни прочих плюшек.

Для решения этих проблем в Razor есть два замечательных блока. Они позволяют создавать хелперы непосредственно в .cshtml-файлах.

image
Круто! но зачем это нужно?
Total votes 42: ↑37 and ↓5 +32
Views 14K
Comments 12

Система электронной коммерции nopCommerce теперь на ASP.NET MVC 3

ASP *
7 июля была опубликована бета версия релиза 2.0 open source системы электронной коммерции nopCommerce, которая была портирована на ASP.NET MVC 3 и поддерживает синтаксис Razor для представлений. При этом архитектура системы была полностью обновлена в процессе миграции.
Еще одной полноценной CMS на базе ASP.NET MVC стало больше, что не может не радовать.
Читать дальше →
Total votes 32: ↑23 and ↓9 +14
Views 1.6K
Comments 4

KnockoutJS: Ajax grid view с нуля в 40 строк

JavaScript *
В последнее время на Хабре все больше упоминаний о KnockoutJS, и я не останусь в стороне от этого тренда.
Сегодня я расскажу о том как сделать своими руками Ajax Grid View с фильтрацией и переходом по страницам написав, при этом, совсем немного кода.
Начиная писать эту статью я чувствовал себя несколько неловко, да и сейчас ощущение не ушло. Все дело в том, что сама библиотека простая, паттерн MVVM простой, и рассказывать я буду простые вещи. Я уверен, что в ближайшее время Knockout получит достаточно большое распространение. А неловко мне от того, что уже через год-дугой кто-то наткнувшись на эту статью будет обескуражен простотой изложенного материала. Примерно так, как любой из вас сейчас, открывший статью о jQuery от 2007 года.

Кто не испугался предполагаемого баяна, милости прошу под хабракат.

Читать дальше →
Total votes 39: ↑36 and ↓3 +33
Views 14K
Comments 22

Получение экземпляра класса запроса по сигнатуре его интерфейса

.NET *
Не так давно на Хабре была опубликована статья (ссылка на топик) моего коллеги AlexanderByndyu, описывающая уход от использования Repository в сторону применения связки QueryFactory + классы запросов Query. При этом в комментариях разгорелся весьма интересный диспут, касающийся целесообразности приведенного в статье решения. Было достаточно много интересных отзывов, среди которых особенно выделялись высказывания о том, что, дескать, QueryFactory не нужен и является лишней обузой, мешающей безболезненному добавлению, изменению и удалению классов запросов. В данной статье я хочу показать подход, который позволяет избавиться от применения QueryFactory, через активное использование IoC контейнера. Данную организацию работы со структурой классов запросов мы использовали в одном из наших недавних проектов, где в качестве IoC использовался Castle.Windsor.
читать далее
Total votes 23: ↑18 and ↓5 +13
Views 11K
Comments 25

Борьба с наследованием и вложенностью ViewModel-ей при разработке lolstore.info

.NET *
Приветствую, хабрачитатель.
Хочу поделиться велосипедом реализацией, к которой пришел в процессе изучения Asp.Net Mvc и разработки бугагашеньки lolstore.info. Мне оная удобна, не исключено что такой станет и для Вас.

Для начала сформулируем проблему/цель:

Сделать всё зашибись. Найти лаконичный и прозрачный способ передачи нескольких(!) типизированных ViewModel-ей из контроллера во View и их рендер с проверкой типов на этапе компиляции.

Ситуация становиться особенно острой, когда для masterpage-а нужна одна ViewModel (html title, доступное меню и т.п), странице — другая (к примеру, список анекдотов), а для pagelet-ов вообще третья (список тегов). Плюс чешется сохранить легкую переносимость тех же pagelet-ов на другие страницы.
Кому интересны тонкости - прошу под кат
Total votes 18: ↑10 and ↓8 +2
Views 901
Comments 7

Создание форм для глубоко вложенных View Model в ASP.NET MVC

ASP *
Translation
Ёще один интересный пост от Jimmy Bogard, посвященный cозданию форм для глубоко вложенных View Model в ASP.NET MVC. Несмотря на то, что в нём постоянно идёт отсылка к ASP.NET MVC 2, информация актуальна и для 3-ей версии. Под хабракатом оригинальный пост в вольном переводе.

Познакомиться с шаблонами для редактирования
Total votes 20: ↑15 and ↓5 +10
Views 5.3K
Comments 14

Реализация одностраничного приложения средствами History API в ASP.NET MVC

ASP *
Sandbox
Добрый день уважаемые хабаровчане. На сайте уже не раз поднимался вопрос о проблеме создания одностраничных ajax приложений. С такой задачей некоторое время назад столкнулся и я. Однако я недоумевал, почему обладая возможностями html5 и мощью MVC я должен столько всего прописывать вручную, да еще и с помощью js.

Возможно именно [holywar=on]неприязнь к языку js[holywar=off] побудили меня создать простое решение, опирающиеся на возможности ASP.NET MVC. Далее, я подробно опишу проблемы, которые возникают при попытке создать одностраничное ajax приложение, и поэтапно рассмотрю создание полноценного решения.

Если стало интересно — добро пожаловать под кат (код и картинки прилагаются).
Читать дальше →
Total votes 33: ↑27 and ↓6 +21
Views 9.4K
Comments 19

SimpleMvcCaptcha, или мой первый опыт Open Source

ASP *
Disclaimer!
Я ни в коем случае не претендую на звание разработчика идеальной капчи, равно как и на изгобретателя чего-то нового. Все, что здесь написано, было сделано мной для познавательных целей и open source. И да, я осознаю, что написать свою капчу — это изобрести велосипед.

С чего все началось


Совсем недавно я начал разрабатывать свой пока небольшой проект на ASP.NET MVC 3. Суть его заключается в том, что посетители могут добавлять на него свои сообщения, которые впоследствии появляются в публичном доступе (кому интересно, что стоит за этим запутанным объяснением — ссылка будет в конце).

Понятное дело, что раз речь идет о публичном проекте с возможностью постинга какого-либо контента на сервер, необходимо позаботиться о защите от спамеров и прочих неприятных личностей. Иными словами — нужна капча.

Первое, что пришло мне в голову, была ReCaptcha от Google. Установив ее и некоторое время попользовавшись, я окончательно понял, что этот монстр — совсем не для меня и не для большинства адекватных людей, тем более русскоязычных (вывод некоторых изображений не только не читается машинно, он и людьми то не может быть прочитан). Поискав другие решения, я, к своему сожалению, не нашел чего-то нормального для MVC 3, простого и ненавязчивого в использовании. Были разные мануалы как сделать то или иное, но готового решения «взял и использовал» как-то не встретилось. Поэтому решил изобрести велосипед написать свою капчу.
Читать дальше →
Total votes 7: ↑5 and ↓2 +3
Views 1.3K
Comments 5

ASP .NET MVC 3. Ajax.ActionLink в виде картинки на примере добавления в избранное звездочкой на habrahabr.ru

ASP *
Sandbox
Данная статья посвящается созданию ссылки картинкой с использованием хелпер метода Ajax.ActionLink, а точнее Extension методу Ajax.ActionImageLink, который мы и будем создавать.
Читать дальше →
Total votes 30: ↑28 and ↓2 +26
Views 16K
Comments 8

Создание собственного элемента управления CheckBoxList

ASP *

Предисловие


В данной статье будет рассмотрена возможность создания собственного элемента управления и его использования в рамках нового проекта на ASP .NET MVC 3.0. Все написанное ниже является точкой зрения автора и может не совпадать с распространенными или общепризнанными методами создания контролов, поэтому критика и комментарии приветствуются.

Введение


Вероятно, многие пользователи, которые ранее работали в своих проектах с WinForms или ASP .NET WebForms, замечали, что Html хелперы в проекте ASP .NET MVC не предоставляют возможность создания такого элемента управления, как CheckBoxList, который мог бы быть полезен в сложных формах фильтров данных или при множественном выборе не структурированных данных, будь то в профиле о пользователе или при добавлении нового топика на хабрахабр. Конечно, никто не запрещает использовать одиночный CheckBox или CheckBoxFor, но будет ли работа с такой группой чекбоксов удобной, а код легко расширяемым, понятным сопровождающему и защищенным от дублирования,- это далеко не последние вопросы для программиста, который планирует использовать свои наработки в будущих проектах. А если принять во внимание, что мы можем добавить к нашему элементу управления некоторые полезные опции для его визуального отображения, то необходимость его создания становится все более и более очевидной.
Читать дальше →
Total votes 35: ↑28 and ↓7 +21
Views 7.9K
Comments 10

In-line редактирование табличных данных в ASP.Net MVC 3

ASP *
Sandbox
Представляю вашему вниманию ещё одну реализацию AjaxGrid на ASP.Net MVC 3.
В статье рассказывается как создать табличную форму с inline редактированием, ajax сортировкой и ajax пейджером.
Читать дальше →
Total votes 15: ↑10 and ↓5 +5
Views 3K
Comments 0

Сессии в ASP.NET или как создать собственный провайдер

Website development *.NET *ASP *


ASP.NET предлагает множество вариантов для работы с сессиями из коробки:
  • Хранение информации о сессиях в памяти сервера, внутри процесса ASP.NET
  • Хранение информации о сессиях на сервере состояний
  • Хранение информации о сессиях в базе данных SQL Server в заранее предопределенной схеме

Но сколько бы ни было вариантов из коробки, они не могут полностью ответить на те задачи, которые встают перед разработчиком. В этой статье мы рассмотрим как реализовать собственный провайдер хранилища состояния сессий (сеансов) для ASP.NET (MVC).

В качестве хранилища сессий будет выступать SQL Server. Работать с базой данных мы будем через EntityFramework.

Сегодня пятница, можно дальше не читать...
Total votes 22: ↑17 and ↓5 +12
Views 29K
Comments 1
1