Автономное веб-приложение MVC3? - PullRequest
2 голосов
/ 20 июля 2011

Вместо того, чтобы идти по маршруту Silverlight / WPF, я хотел бы построить свое (однопользовательское) приложение на HTML5 с MVC3 в качестве бэкэнда. Это возможно? Возможно или практично использовать это для автономного настольного приложения?

Я мог бы настроить его в IIS и выключить, но идея не в этом - она ​​не переносимая, требует фиксированного каталога, и я не могу просто запустить свое приложение где-нибудь, я беру его без установки IIS!

Ответы [ 2 ]

1 голос
/ 20 июля 2011

Я экспериментировал с автономным внутрипроцессным веб-сервером на основе .Net, в котором можно размещать приложения MVC - это, безусловно, возможно, и вы можете использовать такой веб-сервер в автономном приложении либо в сочетании с элементом управления веб-браузером вприложение для Windows или просто с обычным браузером, аналогичным тому, как работает справочная система в Visual Studio 2010.

Доступно несколько вариантов:

  • Neokernel (Не бесплатно)
  • C # WebServer (с открытым исходным кодом)
  • IIS Express может быть вариантом, но, насколько я знаю, акцент делается на предоставлениия не уверен, что распространяемые ресурсы доступны.

На другой вопрос есть ответ , который касается использования веб-ядра IIS, котороевыглядит очень аккуратно, однако требует, чтобы на компьютере был установлен IIS 7.

В качестве альтернативы я сам попытался написать небольшой веб-сервер, который сделалпросто это.Это действительно не так сложно, но хитрая вещь заключалась в том, чтобы заставить мой веб-сервер вести себя точно так же, как IIS при обработке запросов ASP.Net.Хотя он работает по крайней мере с некоторыми приложениями MVC, он определенно не работает со всеми приложениями MVC, и определенное количество «подстройки» почти наверняка потребуется, чтобы все работало в зависимости от сложности.приложения MVC.

Написанное мною доступно на CodePlex , если вы хотите посмотреть, как оно работает, и попытаться написать свое собственное (или адаптировать его для своих собственных целей - если выесли вы хотите получить лицензированную версию без открытого исходного кода, просто спросите)

Если вам нужен работающий веб-сервер, хотя C # WebServer - лучший выбор (хотя я на самом деле его не использовал и поэтому не знаю, чтомного о том, как это работает).

(я мог бы закончить работу над моим веб-сервером на днях, но на данный момент у меня слишком много других проектов!)

0 голосов
/ 20 июля 2011

Первый вариант, который приходит на ум - это использовать IIS Express , который представляет собой небольшой IIS, который вы можете носить с собой в кармане.Я не знаю, какой будет история установки для вашего приложения в этом случае (нужно ли вам устанавливать IIS Express, а затем ваше приложение, или вы можете сделать все это за один раз).

...