Переход на с# под веб: классический asp или core?

194
21 ноября 2018, 01:10

Решил перейти с PHP на C# для работы под веб. Как я понял, есть 2 актуальных фрейморка, для перехода: .NET MVC5 и .NET Core 2.

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

Заранее спасибо за помощь.

Answer 1

В октябре 2018 заканчивается срок техподдержки asp.net core 2.0 поэтому пишите сразу на asp.net core 2.1 -- технология эта уже давно зрелая, можно использовать в продакшене.

В её же достоинствах - мультиплатформенность, сможете запускать не только на IIS под windows, но и на линкс-платформах, где-нибудь в облаке. Я вот пишу код и тестирую на windows 10 -- но продакшн у меня на линуксе.

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

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

Answer 2

Нужно понимать, что .NET Core != ASP.NET Core.

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

ASP.NET Core - это фреймворк для разработки Web-приложений, который может работать как на .NET Core, так и на обычном .NET Framework. Core в названии - это просто странный маркетинговый трюк.

Вот так выглядит wizard создания проекта ASP.NET Core, если вызывать его из поддерева Web, а не из поддерева Core. Вы можете вполне выбрать полный .NET Framework.

По сравнению с ASP.NET MVC 5, ASP.NET Core - это просто следующая версия. ASP.NET MVC 5 вышел в 2013-ом году. После этого он был значительно переработан, получил поддержку .NET Core, и следующая его версия была выпущена под именем ASP.NET Core.

Это просто особенность нумерации версий ASP.NET - 1, 2, 3, 4, (5), Core 1, Core 2.

Так что ваш вопрос на самом деле сводится к "учить версию 5 пятилетней давности или учить последнюю версию 5 + 2". Ответ, на мой взгляд, очевиден :)

READ ALSO
Неправильный POST запрос с JSON данными

Неправильный POST запрос с JSON данными

Реализовываю API запросы на биржу криптовалют BTC-AlphaВ частности вот такой запрос, который позволяет приобретать на бирже разные валюты

135
Telegram api не подключается

Telegram api не подключается

Для тестирования написал небольшой клиент, идет бесконечное подключение(в streamRead)

182
Размытие Label при перерисовке

Размытие Label при перерисовке

Label привязан к позициям курсора мыши (как подсказка)

147
Чем отличается что лучше использовать?

Чем отличается что лучше использовать?

Скажите пожалуйста чем отличается:

178