Рубрика «ASP.NET» - 6

Логотипы WebMarkupMin, .NET Core и NUglify
Весной прошлого года, когда ASP.NET 5 был еще в стадии Beta 3, я начал получать от пользователей письма с просьбами сделать WebMarkupMin совместимым с DNX 4.5.1 и DNX Core 5.0. Основной проблемой было то, что новый .NET не поддерживал настройку с помощью конфигурационных файлов App.config и Web.config. Переписывание WebMarkupMin.Core, WebMarkupMin.MsAjax и WebMarkupMin.Yui не должно было представлять особой сложности, потому что нужно было просто удалить весь код, использующий библиотеку System.Configuration. Серьезные проблемы должны были возникнуть при переписывании ASP.NET-расширений, потому что для них нужно было разработать совершенно новую модель конфигурации, а это, в свою очередь, требовало очень серьезных изменений в архитектуре. Эти изменения затрагивали не только код, но и структуру решения и NuGet-пакеты, поэтому я решил начать с чистого листа и сделал репозиторий на GitHub. На тот момент, до релиза стабильной версии нового ASP.NET оставалось как минимум полгода, поэтому нужно было одновременно поддерживать 2 ветви WebMarkupMin: стабильную 1.X на CodePlex и предварительную 2.X на GitHub.

Как известно всем, выход стабильных версий .NET и ASP.NET Core 1.0 задержался еще на несколько месяцев и состоялся только в конце июня этого года. Вслед за релизом этих фреймворков, состоялся и релиз WebMarkupMin 2.0. В этой статье я расскажу вам о том, как обновить существующие приложения под WebMarkupMin 2.X, а также как добавить его в веб-приложения, написанные на ASP.NET Core.

Критические изменения и нововведения

Для того чтобы установить пакеты WebMarkupMin 2.X вам необходимо обновить NuGet Package Manager до версии 2.8.6 или выше.

Основным критическим изменением версии 2.X стал отказ от использования файлов Web.config и App.config для настройки WebMarkupMin. Теперь при настройке вместо декларативного подхода (использование конфигурационных файлов) используется императивный подход (использование программного кода).
Читать полностью »

Как должна выглядеть .NET-конференция в 2016-м, когда в .NET-мире происходит тектонический сдвиг? Очевидно, что (ASP).NET Core очень сильно скажется на жизни разработчиков, но для большинства из них это произойдёт лишь спустя ощутимое время. О чём в таком случае рассказывать — масштабных новшествах, которые станут актуальны позже, или более привычных темах, которые важны здесь и сейчас?

Петербургский «Летний фестиваль разработчиков», состоящий из трёх конференций подряд, начался с DotNext 2016. Как там была разрешена возникшая дилемма, и как вообще прошёл DotNext? По снимку команды организаторов видно, что при всей хардкорности мероприятие не обошлось без летнего настроения, а все остальные подробности — под катом.

DotNext 2016: Между настоящим и будущим - 1

Читать полностью »

До DotNext 2016 Piter (3 июня, гостиница Park Inn Пулковская) осталось всего ничего – каких-то пара дней. А вчера, изучая программу на сайте конференции, я поймал себя на мысли, что подробное изучение всех докладов, спикеров и хабропостов отняло у меня больше 2 часов чистого времени!

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

  • 4 доклада по ASP.NET Core;
  • 3 – про технику про инструменты разработки;
  • Доклад про кроссплатформенность .NET.

Но ведь DotNext это не обсуждение тулзов и анонсов платформ, но и адский хардкор, разве нет? Конечно, и этого у нас полно: перфоманс, кодогенерация, модели памяти, математика и многое другое. Ну как оно?

DotNext 2016 Piter: Full Stack .NET conference - 1
Читать полностью »

Пост о том как не надо вести разработку фреймворков, и о том, почему жизненный цикл программного обеспечения это не пустые слова, особенно, если на вас полагаются миллионы разработчиков по всему миру. Далее следует критика подхода к разработке платформы .NET Core, и, тесно связанного с ним фреймворка, ASP.NET Core.

.NET Core: релиза не будет, но вы держитесь, здоровья вам, хорошего настроения - 1

История версий .NET Core (шутка с просторов Интернета):

* Alpha
* Beta
* RC1
* 2RC 2Furious
* RC: Tokyo Drift
* RC4: The Big RC
* 7
* RC8

Читать полностью »

На прошлой неделе мы анонсировали расписание выхода RC2/ RTM версий .NET Core и ASP.NET. Сейчас, когда мы уже выпустили RC2, я бы хотел раскрыть чуть больше подробностей о переходе .NET Core с проектов типа .xproj/project.json на .csproj/MSBuild.

MSBuild

Когда команда ASP.NET начала работу над ASP.NET 5 (ASP.NET Core уже), то одной из главных целей была возможность легкого создания и разработки приложений на Windows, Mac и Linux. Это повлекло за собой создание систем проектов .xproj/project.json. Ключевыми фичами были:

  • Отсутствие перечисления файлов в проекте
  • Легкость редактирования файла проекта без IDE
  • Создание Nuget –пакета, используя только проект
  • Кросс-компиляция для разных версий фреймворка
  • Легкость переключения ссылок/зависимостей

Продолжая разработку, мы расширяли роль самого .NET Core:

  • .NET Core стал платформой для Universal Windows Applications (UWP)
  • .NET Core стал кросс-платформенным набором инструментов для создания как консольных приложений, так и библиотек
  • Microsoft приобрела Xamarin, чтобы .NET разработчики могли создавать iOS и Android приложения (прим. переводчика: речь идет о бесплатности Xamarin tools)

Как это влияет на project.json? Одним из ключевых принципов .NET как платформы — возможность совместного использования кода нашими разработчиками во всех моделях приложений .NET (WinForms, WPF, UWP, ASP.NET, IOS, Android и т.д.). Это создает ряд проблем: хоть project.json отлично подходит для создания веб-приложений и библиотек классов, но в то же время не позволяет унификацию с другими моделями приложений.
Читать полностью »

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

А вообще зачем всё это

Мы — маленькая компания, наш штат — порядка 50 человек, 20 из которых — разработчики. Сейчас у нас 4 команды разработки, в каждой из которых сидит примерно по 5 fullstack разработчика. Но одно дело — называть себя fullstack-разработчиком, а другое дело — действительно разбираться одинаково хорошо в тонкостях работы SQL Server'а, ASP.NET, разработке на C#, разбираться в OOP, DDD, знать HTML, CSS, JS и уметь этим всем разумно пользоваться. Конечно же каждый разработчик тяготеет к чему-то своему, но все мы так или иначе специалисты именно в разработке на .NET и 90% кода мы пишем на C#.
Наш продукт — система автоматизации маркетинга — подразумевает довольно большой объем настроек для каждого конкретного клиента, и для того, чтобы наши менеджеры могли заниматься этой самой настройкой продукта под клиентов, у нас есть административный сайт, в котором можно заводить рассылки, создавать триггеры и другие механики, кастомизировать сервисы и многое другое. Этот административный сайт содержит довольно много различного нетривиального UI'а, и чем сильнее мы углубляемся, чем более тонкие моменты мы даём настраивать, чем большее количество фич мы выпускаем в продакшн, тем более интересным он становится. Чтобы не быть голословным, пара скриншотов (уже под катом, и скриншотов там отнюдь не пара!):
Читать полностью »

Всем привет.
Все мы немного нервничаем при установке нового релиза на прод. Существует много различных технологий позволяющих нам облегчить этот процесс и сделать его чуть менее нервозным. Одна из таких технологий, которую уже довольно давно облюбовали UNIX-инженеры, это использование символических ссылок, позволяющая свести к минимуму время накатки релиза и откатки на предыдущий релиз если «что-то пошло не так»(с). Этот механизм так же присутствует и в Windows, однако почему-то активно не используется. А зря. Данная статья призвана поправить это недоразумение и сделать процесс накатки релиза более приятным.

Деплой ASP.NET приложений при помощи символических ссылок - 1
Кадр из х/ф «Джентльмены удачи»
Читать полностью »

Мы продолжаем нашу колонку по теме ASP.NET Core очередной публикацией от Дмитрия Сикорского ( DmitrySikorsky) — руководителя компании «Юбрейнианс» из Украины. В этот раз Дмитрий продолжает рассказ о своем опыте разработки модульного кроссплатформенного фреймворка на базе ASP.NET Core. Предыдущие статьи из колонки всегда можно прочитать по ссылке #aspnetcolumn — Владимир Юнев

В предыдущей статье я уже рассказывал об ExtCore — небольшом фреймворке для разработки модульных и расширяемых приложений на ASP.NET Core. В этой статье я постараюсь более подробно остановится на процессе разработки приложения на его основе.

Основное приложение

Первым делом создадим новый пустой проект на ASP.NET Core 1.0:

Готовим ASP.NET Core: подробнее про работу с модульным фреймворком - 1

Читать полностью »

Microsoft DevCon 2016 — представляем первую волну докладчиков Community-трека - 1

Привет!

Недавно мы анонсировали нашу ежегодную конференцию для разработчиков DevCon 2016, новый формат программы и различные типы билетов для участников, в том числе специальное предложение Guest Pass. В предыдущих публикациях мы анонсировали содержание конференции и список основных треков: Windows, Office, Azure, Startup и Community трек. Самое время представить вам докладчиков Community-трека, которые поделяться различным опытом с самых передовых позиций индустрии. Давайте начнем знакомиться с теми, кто приедет к нам на DevCon, расскажет про свой real-world experience (у нас много иностранных докладчиков) и ответит на любые вопросы до, во время и после своих докладов.

У нас будут совершенно разные темы — облако, Интернет вещей, микросервисы, F#, пивоварня, тестирование и ALM, TFS и игровая разработка.
Поехали — начнем с заграничных гостей и продолжим коллегами из России.
Читать полностью »

С удовольствием анонсирую проведение интенсива по теме ASP.NET Core в рамках конференции Microsoft DevCon 2016, которая пройдет 25-26 мая в Подмосковье.

Анонс интенсива по ASP.NET Core в рамках конференции Microsoft DevCon 2016 - 1


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

Мы очень рады анонсировать докладчиков и организаторов интенсива по ASP.NET: Джон Гэллоуэй — старший технологический евангелист, Microsoft США, Сергей Пугачев — консультант по техническим решениям, Google, Игорь Сычев — инженер премьер поддержки разработки, Microsoft Россия, Владимир Юнев — старший технологический евангелист, Microsoft Россия.

Подробнее о содержании интенсива ниже.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js