2016-08-06 3 views
4

Когда ASP.NET MVC пришел, Microsoft много раз заявляла во многих местах, что она не должна заменять веб-формы ASP.NET. Другими словами, это просто еще одна технология, которую вы можете найти полезной, или вы можете использовать Web Forms в других сценариях.Является ли Owin/Katana заменой Web API?

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

Теперь мы пытаемся перейти к Owin/Katana из Web API. Мы просто задаемся вопросом, нормально ли, что мы переходим на 100% в Овин?

Причина, по которой я задаю этот вопрос, заключается в том, что мы создали очень богатую базу кода для веб-API, включая потоковое, сжатие, аутентификацию, нормализацию UGC, поддержку I18N & L10N и многое другое.

Если мы хотим переехать в Овин, нам нужно снова создать эти объекты/утилиты для Owin, потому что его архитектура отличается от веб-API.

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

Безопасно ли нам полностью переехать в Овин и представить себе будущее, в котором все наши услуги доставляются через Owin, и мы прекращаем использование Web API?

+1

У вас есть неправильная концепция! Вы должны сравнить 'OWIN' с' веб-хостом'. – dotctor

+0

Если вам действительно нужен собственный хостинг или хостинг на разных ОС, попробуйте переключиться с 'Web Host' и' IIS' на механизм хостинга на основе OWIN. – dotctor

ответ

4

OWIN - всего лишь спецификация, ничего более. В нем описывается общий интерфейс, который могут использовать серверы и приложения, так что приложениям не нужно тесно связываться с серверами.

Katana был первым шагом к развязыванию ASP.NET из IIS. Работа над Katana has stopped now, согласно официальной дорожной карте. Идеи и технологии, разработанные для Katana, вошли в следующую версию ASP.NET (Core ASP.NET).

Редко имеет смысл создавать приложения поверх самой OWIN, потому что вы работаете на самом низком уровне абстракции над HTTP (буквально обрабатывая необработанные запросы и ответы). Это обычно необходимо только в том случае, если вы создаете компоненты промежуточного программного обеспечения, которые нуждаются в низкоуровневом доступе.

Другими словами: вы не должны перестраивать свое приложение на OWIN, потому что вы потратите много времени на повторное использование всего материала, уже находящегося в ASP.NET.

ASP.NET Core - следующая эволюция ASP.NET и веб-API. В нем есть все, что вы упоминали: он быстрый, легкий и может самообслуживать. Если вам нужно перестроить свою архитектуру, сделайте это в ASP.NET Core.

+0

Подробнее о ASP.NET Core и OWIN в моем ответе здесь: [Является ли ASP.NET Core по-прежнему использовать OWIN?] (Http://stackoverflow.com/questions/38713134/does-asp-net-core-still-use -owin). –

+1

Можете ли вы сослаться на действительную ссылку, в которой говорится: «Катана исправна *? –

+1

@SaeedNeamati Конечно, отредактировал мой ответ с дополнительной информацией о Катане. См. Официальную дорожную карту здесь (работа остановлена ​​после v3): https://katanaproject.codeplex.com/wikipage?title=roadmap&referringTitle=Home –

 Смежные вопросы

  • Нет связанных вопросов^_^