Pull to refresh

Представлен .NET 5

Reading time 7 min
Views 67K
Райффайзен Банк corporate blog Website development *.NET *Development of mobile applications *Visual Studio *
Translation
6 мая было объявлено, что следующим после .NET Core 3.0 релизом будет .NET 5. Это будет следующий большой релиз в семействе .NET.

В будущем останется только один .NET, и вы сможете использовать его для разработки под Windows, Linux, macOS, iOS, Android, tvOS, watchOS, WebAssembly и другие платформы.

Мы представим новые .NET API, возможности исполняющей среды и возможности языка как части .NET 5.


Читать дальше →
Total votes 71: ↑68 and ↓3 +65
Comments 201

Представляем .NET 5 Preview 1

Reading time 5 min
Views 22K
Microsoft corporate blog Programming *.NET *C# *
В конце прошлого года мы выпустили .NET Core 3.0 и 3.1. В этих версиях добавлены модели настольных приложений Windows Forms (WinForms) и WPF, ASP.NET Blazor для создания одностраничных приложений и gRPC для кроссплатформенного обмена сообщениями на основе контрактов. Мы также добавили шаблоны для создания сервисов, крутое генерирование клиентского кода для общения с gRPC, сервисы REST API и многое другое. Мы рады, что .NET Core 3 стала самой быстро-принятой версией .NET, и за последний год у нас появился еще миллион пользователей.

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

В ожидании следующего основного выпуска .NET 5 мы продолжим объединять .NET в единую платформу, включив нашу модель приложения для мобильных устройств .NET (Xamarin) в .NET 5. .NET 5 будет включать ASP.NET Core, Entity Framework Core, WinForms, WPF, Xamarin и ML.NET. Впервые вся платформа будет использовать унифицированный BCL (библиотеки базовых классов) для всех моделей приложений. Наличие версии 5, которая выше, чем у .NET Core и .NET Framework, также дает понять, что .NET 5 — это будущее .NET, единой унифицированной платформы для создания приложений любого типа.

Мы говорили это много раз, но мы еще раз повторим; .NET Core, а затем .NET 5 — это .NET, с помощью которого вам стоит создавать все свои новые приложения. .NET Framework будет поддерживаться до тех пор, пока поддерживается сама Windows. Мы будем продолжать обеспечивать безопасность и исправлять ошибки, а также обновлять сетевые и крипто API. Он будет оставаться безопасным и поддерживаться для работы ваших старых приложений на .NET Framework.

Читать дальше →
Total votes 25: ↑25 and ↓0 +25
Comments 18

Представляем .NET 5.0 Preview 3

Reading time 3 min
Views 7K
Microsoft corporate blog Programming *.NET *C# *
Представляем новую версию .NET 5.0 Preview 3. Она содержит набор новых функций и улучшений производительности. Мы продолжаем работать над более фундаментальными функциями, которые будут содержаться в финальном выпуске 5.0. Статья о .NET 5.0 Preview 1 охватывает то, что мы планируем внедрить в .NET 5.0. Пожалуйста, ознакомьтесь с публикацией и репозиторием dotnet/designs и поделитесь своими отзывами. И, конечно же, пожалуйста, установите Preview 3 и протестируйте свои задачи с новой версией.

Вы можете скачать .NET 5.0 Preview 3 для Windows, macOS и Linux:


ASP.NET Core и EF Core также теперь доступны.

Подробности о версии под катом.

Читать дальше →
Total votes 14: ↑14 and ↓0 +14
Comments 4

Представляем .NET 5.0 Preview 6

Reading time 4 min
Views 15K
Microsoft corporate blog Programming *.NET *C# *F# *
Translation
На прошлой неделе мы выпустили .NET 5.0 Preview 6. Версия содержит небольшой набор новых функций и улучшений производительности. Пост .NET 5.0 Preview 4 посвящен тому, что мы планируем выпустить в .NET 5.0. Большинство функций в настоящее время уже реализовано, но некоторые еще не в своем окончательном состоянии. Мы ожидаем, что релиз будет полнофункциональным с Preview 8.

Вы можете скачать .NET 5.0 Preview 6, для Windows, macOS и Linux:


ASP.NET Core и EF Core также были выпущены на прошлой неделе. Примечание: EF Core 5.0 не будет поддерживать .NET Standard 2.0 или .NET Framework. Читайте пост о выпуске EF Core чтобы узнать больше.

Вам нужно использовать Visual Studio 2019 16.7 для работы с .NET 5.0. .NET 5.0 теперь поддерживается в Visual Studio for Mac. Установите последнюю версию расширения C# для использования .NET 5.0 с Visual Studio Code.

Заметки:


Читать дальше →
Total votes 12: ↑12 and ↓0 +12
Comments 9

Представляем .NET 5.0 Preview 7

Reading time 3 min
Views 6.1K
Microsoft corporate blog Programming *.NET *C# *
Выпускаем .NET 5.0 Preview 7. Это пред-пред-последний релиз из предварительных (до перехода на RC). На этом этапе большинство функций должны быть очень близки к финальным. Встроенные функции (интринсики) одного файла и ARM64 — две функциональные области, для интеграции которых нам требуется наибольшее время, но они будут готовы к следующему Preview 8. Изучайте пост .NET 5.0 Preview 4 для лучшего понимания релиза в целом.

Новые ASP.NET Core и EF Core также уже готовы.

Вы можете загрузить .NET 5.0 Preview 7 для Windows, macOS и Linux:


Вам нужно использовать Visual Studio 2019 16.7 для работы с .NET 5.0. .NET 5.0 теперь поддерживается Visual Studio для Mac. Установите последнюю версию расширения C# для использования .NET 5.0 с Visual Studio Code.

Подробнее о Preview 7 под катом.

Читать дальше →
Total votes 18: ↑17 and ↓1 +16
Comments 1

Про новинки в .NET 5 и C# 9.0

Reading time 21 min
Views 83K
.NET *
Добрый день.

В нашей компании .NET используется с самого его рождения. У нас в продуктиве работают решения, написанные на всех версиях фреймворка: от самой первой и до последней на сегодняшний день .NET Core 3.1.

История .NET, за которой мы пристально следим всё это время, творится на глазах: версия .NET 5, которую планируют релизить в ноябре, только что вышла в виде Release Candidate 2. Нас давно предупреждали, что пятая версия будет эпохальной: с нею закончится .NET-шизофрения, когда существовали две ветки фреймворка: классический и Core. Теперь они сольются в экстазе, и будет один сплошной .NET.

Вышедший RC2 уже можно начинать полноценно использовать – никаких новых изменений перед релизом больше не ожидается, будет только фикс найденных багов. Более того: на RC2 уже работает официальный сайт, посвящённый .NET.

А мы представляем вам обзор новшеств в .NET 5 и C# 9. Вся информация с примерами кода взята из официального блога разработчиков платформы .NET (а также ещё из массы источников) и проверена лично.
Читать дальше →
Total votes 131: ↑131 and ↓0 +131
Comments 152

Поддержка процессоров Apple M1 в .NET

Reading time 4 min
Views 22K
Programming *.NET *Development for MacOS *

17 ноября Apple официально представила устройства на базе своего нового ARM-процессора Apple M1. Естественно, это событие не могло быть не замечено со стороны компании Microsoft, которая с 2014 года начала активную экспансию .NET на новые платформы. Давайте посмотрим, что нас ждет в связи с этим в ближайшее время!

Быть ли поддержке Apple M1 в .NET?
Total votes 16: ↑16 and ↓0 +16
Comments 62

Вышел .NET 5. И что?

Reading time 7 min
Views 60K
Контур corporate blog Programming *.NET *C# *

Несколько недель назад вышел .NET 5. На сайте Microsoft можно найти подробный анонс со всеми изменениями, но главный вопрос для меня, как для разработчика — и что с того? Что мне с выхода пятого дотнета, как я могу его использовать, есть ли смысл переходить на новую версию прямо сейчас? На эти вопросы я постараюсь ответить дальше.


image

Читать дальше →
Total votes 44: ↑44 and ↓0 +44
Comments 100

Что нового в Windows Forms runtime в .NET 5.0

Reading time 5 min
Views 8.4K
Microsoft corporate blog Programming *.NET *C# *Development for Windows *
С тех пор как Windows Forms был «Open Soursed» в конце 2018 года и в целом интерфейс был перенесен на .NET Core, и команда, и наши внешние участники были заняты исправлением старых ошибок и добавлением новых функций. В этом посте мы поговорим о новых возможностях среды выполнения Windows Forms в .NET 5.0. Заглядывайте под кат!

Читать дальше →
Total votes 15: ↑14 and ↓1 +13
Comments 11

Провайдер логирования для Telegram (.NET 5 / .NET Core)

Reading time 3 min
Views 12K
Programming *.NET *C# *
Tutorial

Не секрет, что Telegram является на данный момент одним из самых популярных мессенджеров. Особенно в среде ИТ-специалистов. Он удобен, в нем нет встроенной рекламы и работает весьма стабильно. Довольно большую часть времени я общаюсь как по работе, так и по личным вопросам именно в этом мессенджере. Поэтому в один прекрасный день я подумал о том, что было бы удобно, чтобы в этом же мессенджере я мог получать уведомления о работе некоторых своих сервисов. На тот момент я как раз активно работал над интеграцией проекта //devdigest и Telegram, поэтому используя тот же родной Telegram Bot SDK довольно быстро реализовал логгер.

Несколько дней назад я решил вернуться к этому проекту, слегка почистить и отрефакторить код, а затем выложить его в открытый доступ – быть может возможность получения логов в Телеграм будет полезна кому-то еще. Если этот кто-то – вы, то

добро пожаловать под кат
Total votes 10: ↑10 and ↓0 +10
Comments 10

Работа с большими решениями .NET 5 в Visual Studio 2019 16.8

Reading time 4 min
Views 5.3K
Microsoft corporate blog Programming *.NET *Visual Studio *C# *

С выпуском .NET 5 миграция решений из .NET Framework увеличилась. В частности, мы начали наблюдать перемещение очень крупных решений. Чтобы обеспечить максимальное удобство, мы работали над оптимизацией Visual Studio для обработки решений, содержащих большое количество проектов .NET 5 и .NET Core. Многие из этих оптимизаций были включены в версию 16.8, и в этом посте рассматриваются внесенные нами улучшения.

Читать далее
Total votes 12: ↑10 and ↓2 +8
Comments 3

Парсер командной строки на .NET5

Reading time 4 min
Views 8K
Microsoft corporate blog Programming *.NET *C# *Open data *

Сегодня мы собираемся показать вам, как начать парсинг аргументов командной строки. Кстати, это один пост из серии статей о .NET 5. У нас есть еще много интересного.

Приложения командной строки, также известные как консольные приложения, - это программы, созданные для использования из оболочки, например cmd или bash. Они существуют с 1960-х годов, задолго до появления Windows, MacOS или любого другого графического пользовательского интерфейса (GUI).

Обычно, когда вы начинаете изучать язык программирования, самый простой и распространенный стартовый пример -- это приложение Hello world. Подобные примеры в основном выводят на консоль только текст «Hello world», используя свои встроенные API. Компьютерное ПО может делать много разных вещей. Иногда у вас будет ввод, который каким-то образом преобразуется в вывод. В нашем примере «Hello world» нет никакого ввода.

Читать далее
Total votes 12: ↑8 and ↓4 +4
Comments 7

Кодогенерацию с использованием Roslyn можно использовать и без перехода на .Net 5

Reading time 6 min
Views 3.6K
.NET *C# *
Translation


Недавно, когда я просматривал новые возможности, которые будут включены в .Net 5, я натолкнулся на одну весьма интересную — генераторы исходного кода. Этот функционал меня особенно заинтересовал, так как я использую аналогичный подход в течение последних… 5 лет, и то, что предлагает Microsoft — это просто более глубокая интеграция этого подхода в процесс сборки проектов.


Примечание: Оригинал был написан в момент, когда релиз .Net 5 только-только собирался выйти, но актуальности этот текст, на мой взгляд, не потерял, поскольку переход на новую версию платформы занимает какое-то время, да и принципы работы с Roslyn никак не поменялись.


Далее я поделюсь своим опытом использования Roslyn при генерации кода, и надеюсь, что это поможет вам лучше понять, что именно предлагает Microsoft в .Net 5 и в каких случаях это можно использовать.

Читать дальше →
Total votes 12: ↑12 and ↓0 +12
Comments 4

A little life hack when you work with Azure Service Bus and ASP.NET Core

Reading time 7 min
Views 9.5K
.NET *Microsoft Azure *
Tutorial

Some of the features of your website require message queue integration. It is not a complex task for most developers. If you work with Azure infrastructure, you are able to choose Azure Service Bus as a queue engine. It sounds quite simple: just create Azure Resource, write some code and then be happy! But what would you say if the resources are limited? What will you do if there are several teammates in your team, and all of you have to debug queues at the same time? I try to give you a simple solution.

Read more
Total votes 3: ↑3 and ↓0 +3
Comments 3

Уменьшить размер консольного .NET 5.0 приложения

Reading time 3 min
Views 4.9K
.NET *C# *

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

В чём проблема и как решить?

Читать далее
Total votes 9: ↑8 and ↓1 +7
Comments 34

Добавляем CRUD в ASP.NET Core проект за 10 минут с помощью EasyData

Reading time 6 min
Views 8.1K
.NET *C# *

image


Одной из первых задач для большинства бизнес-приложений на ASP.NET Core является реализация операций CRUD (Create, Read, Update, Delete) для основных объектов, с которыми работает ваше решение.


Каждый разработчик, которому нужно решить эту задачу, знает, что создание CRUD-страниц и форм — очень скучный и трудоемкий процесс.


Если делать это вручную, то получится очень медленно и наверняка с кучей недоработок (пропущенные поля, забытые валидаторы и т.д.).


Можно воспользоваться инструментом scaffolding'а, доступным в Visual Studio. Но даже в этом случае это будет совсем не быстрый процесс, поскольку его нужно запускать для каждого класса модели. В итоге вы получаете множество .cs/.cshtml файлов, которые нужно поддерживать и атуализировать по мере изменений в классах модели или просто когда нужно что-то исправить в поведении или внешнем виде CRUD страниц. Если количество сущностей в вашей БД превышает десяток, то весьма велики шансы того, что файлы для реализации CRUD операций занимают больше 50% всей кодовой базы вашего проекта. Более того это решение все равно не обеспечивает некоторых важных, а порой и необходимых функций, таких как разбитие на страницы в режиме просмотра (pagination) или банальные поиск/фильтрация.


Решение: использовать библиотеку с открытым кодом EasyData, о которой и пойдет речь в данной статье.

Читать дальше →
Total votes 17: ↑17 and ↓0 +17
Comments 5

Реализация Web API OData в ASP.NET Core 3 и ASP.NET 5 (часть 1). Связи «многие-ко-многим»

Reading time 9 min
Views 8.9K
АльфаСтрахование corporate blog .NET *

Наша команда занимается развитием корпоративной системы электронного документооборота. В команде часть приложений разрабатывается на текущей LTS версии .NET Core 3.1, в частности, бэкэнд для SPA, а также ряд Worker Service’ов, которые с определенным интервалом взаимодействуют с СЭД.

Со временем, возникла необходимость использования этими приложениями общих мастер-данных. Для их хранения решили использовать БД PostgreSQL, так как имели свежий опыт и почти готовое окружение для его развертывания. Непосредственно для получения (а в будущем – и для записи) данных приложениями, решили реализовать Web API на .NET Core 3.1, чтобы инкапсулировать взаимодействие с БД в одном приложении и заложить возможность взаимодействия с любой системой. В качестве ORM, исходя из сложившихся практик и опыта, использовали EF Core. При этом, нужна была возможность фильтрации и получения связанных данных. Чтобы не придумывать велосипед в этой части, пришли к необходимости реализации API на основе стандартов OData.

В сети есть ряд хороших статей по реализации API OData на .NET Core, однако информация в них весьма разрозненна и зачастую авторы упускают важные нюансы, имеющиеся в реализации. В первой статье нами описана общая реализация API OData с использованием EF Core. Особое внимание при этом уделено неочевидным моментам при реализации типа связи «многие-ко-многим».

Читать далее
Total votes 4: ↑4 and ↓0 +4
Comments 3

Реализация Web API OData в ASP.NET Core 3 и ASP.NET 5 (часть 2). Методы контроллера

Reading time 8 min
Views 3.5K
АльфаСтрахование corporate blog .NET *

В предыдущей статье было описано создание Web API OData на .NET Core с акцентом на особенности реализации связи "многие-ко-многим".

В данной статье хотели бы коснуться реализации методов контроллера для одной из моделей, описанных в предыдущей статье. Как правило, статьи по реализации API OData на .NET Core содержат всего пару примеров – получение всех сущностей и получение одной сущности по ее ID.

Мы постараемся дать больше образцов кода для написания методов, которые позволяют осуществлять основные манипуляции с данными в рамках требований OData.

Читать далее
Rating 0
Comments 0

Мой первый Pet-проект — Regexoop

Reading time 4 min
Views 6.1K
.NET *C# *Project management *
Sandbox

Спустя некоторое время я увидел интересный метод "12 проектов за 12 месяцев". Суть метода состоит в том, что ты каждый месяц делаешь 1 продукт и показываешь его людям. Неважно насколько он готов.

Regexoop - переосмысление подхода написания regex. 30 сентября я подумал - "Хм, regex такой сложный. НУ ПОЧЕМУ? Может его можно сделать как-то проще?".

Читать далее
Total votes 25: ↑15 and ↓10 +5
Comments 26
1