Подтвердить что ты не робот

Существуют ли альтернативы ASP.NET для веб-разработки С#?

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

Есть ли что-нибудь подобное? Я бы хотел, чтобы инфраструктура была более прозрачной: я хочу видеть запрос, передавать его туда, где хочу, обрабатывать HTML так, как я хочу, и отправлять запросы, как я хочу. Я могу получить все это в ASP.NET, но мне нужно очень усердно разбираться в этом. Я бы хотел, чтобы что-то более простое использовалось в качестве основы для некоторых новых концептуальных идей.

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

4b9b3361

Ответ 1

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

MVC позволяет вам обрабатывать рендеринг так, как вы хотите (это не похоже на плохие старые веб-формы), HttpHandlers позволяет обрабатывать запросы и Ответы настолько низки, насколько разумны (для меня). В 99 раз из 100 вы не хотите иметь дело с необработанными необработанными данными, поступающими с веб-сервера (и что в любом случае является сырым? "Запрос" - это сама абстракция...).

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

Ответ 2

Я не уверен, соответствует ли это вашим требованиям, но вы можете определенно проверить Manos

Ответ 3

Вы должны посмотреть Fubu MVC, затем FubuMVC

Ответ 4

Я бы сказал, если вы настроены на С# в качестве языка ASP.net MVC так же хорошо, как сейчас. Вы можете поэкспериментировать с другими механизмами шаблонов, такими как Spark или Nhamle.

Ответ 5

Я бы пошел и реализовал обработчик HTTP с использованием файлов ASHX. Он дает всю мощь объектной модели ASP.NET, но не ограничивает вас каким-либо специальным способом обработки запроса.

Ответ 6

Если вы ищете альтернативные рамки, вы можете взглянуть на Nina

https://github.com/jondot/nina

С веб-сайта:

Нина - это веб-микрофракция для платформы .Net, вдохновленная Синатрой. Он включает в себя несколько аспектов, которые идут дальше Синатры, таких как абстрактная, подключаемая и расширяемая инфраструктура.

  • Простая в использовании DSL, простая модель программирования.
  • Производительность как цель.
  • Несколько подключаемых систем просмотра.
  • Множество сценариев, поддерживаемых поддержкой Json и XML.
  • Расширенный контроль кеша для экосистемы RESTful; автоматическое управление ETagging и Last-Modified.
  • Нина намеренно строится против среды исполнения .Net 2.0, чтобы обеспечить более низкий барьер входа!. Порт Nina для версии 4.0 будет доступен в ближайшее время.
  • Заметка о поддержке Razor: я решил использовать RazorEngine, которая представляет собой абстракцию с открытым исходным кодом механизма просмотра Razor без использования полного стека MVC. В этой реализации данные просмотра отображаются как "Модель". Я выбрал выравнивание других представлений, и теперь у каждого представления есть свои данные просмотра, доступные членам 'Model' и 'ViewData' (кроме Razor).

Ответ 7

Я думаю, вы хотите WebMatrix.

В основном это очень простая (ASP-подобная) модель, но затем закодированная с С#/.Net, и вы получаете синтаксис @Razor.

Ответ 8

Хотя это относительно старый вопрос, я хотел бы добавить некоторые другие рамки, которые стоит посмотреть:

  • MonoRail старше Asp.NET MVC и очень похож на него. В настоящее время они работают над версией 3 MonoRail. Я использовал MonoRail Version 2 для стороннего проекта, и это был хороший опыт.
  • OpenRasta. У меня нет опыта в этом прямо сейчас.
  • TinyWeb. Отличная Asp.NET Micro Framework (вы можете найти сравнение .NET Microframeworks (включая Anna и Jessica веб-фреймворки))

Ответ 10

Мне кажется, что вы ищете микрокарт, например Sinatra, но в С# вместо Ruby. Я не знаю какой-либо такой структуры.

Я рекомендую вам погрузиться в Синатру. Изучение Ruby поможет расширить вас как разработчика, вы будете ближе к HTTP-металу (который звучит так, как вы хотите), и это будет весело. Минимализм и простота, которые звучат так, как вы ищите, гораздо более популярны в сообществе Ruby.

Ответ 11

Если вы можете использовать моно. Затем вы можете попробовать Mongrel2 с привязкой к точкам. Это очень быстрый агностический веб-сервер. Он работает через zeroMQ.