39

是否可以在另一个应用程序中自行托管 asp.net mvc,即。控制台、Windows 窗体、服务等。

我想构建一个提供 Web 界面来控制它的应用程序,并且我想将 asp.net mvc 用于它的 Web 部分。

我确实快速浏览了一下 Nancy,它看起来可以工作,虽然它不是 asp.net mvc,但它确实支持 razor,尽管它对它的支持水平与 asp.net 不完全相同(例如,强类型视图)

我确实也发现了这个问题,但它并没有真正深入了解 可能在没有 IIS 的情况下使用 ASPNET MVC2?

4

3 回答 3

35

您可以使用“IIS 7.0 Hostable Web Core”并将 Web 服务器托管为任何用户进程的一部分,甚至是控制台应用程序。好处是它与完整的 IIS(包括配置等)非常相似,但 Web 服务器本身正在您的进程中运行。

看看以下文章:

  1. 使用 IIS 7.0 Hostable Web Core 在您的应用程序中托管您自己的 Web 服务器
  2. 创建托管 Web 核心应用程序
于 2012-04-30T05:53:18.777 回答
11

请看一下http://cassinidev.codeplex.com/ 它有很多优点,例如

  • 客户端机器上不需要 IIS 7
  • 支持MVC(我自己测试过)
  • 与 Windows 窗体和 Web 浏览器控件配合使用,以打包为 Windows 应用程序
  • Cross Win OS 平台(Windows XP、Vista、7)我已经安装了 .NET 4 测试 XP

希望这可以帮助。

于 2012-10-11T08:20:04.727 回答
4

我知道这个问题很老,但它仍然是相关的,所以使用 .NET Core 1.0 + ASP.NET MVC 6,您可以轻松地自托管您的 MVC 应用程序。您甚至可以将 MVC 和 WebAPI 应用程序合二为一,您可以稍后再决定是否要使用 IIS、IIS Express 或 .NET Core 的自托管功能。

如果您遵循这篇文章中的 Yeoman 方法,您可以尝试一下: https ://stackoverflow.com/a/30314393/980247

于 2016-12-14T11:17:55.107 回答