我们有一个桌面客户端应用程序,最近的客户请求表明他们希望应用程序提供并显示一些动态HTML内容。
我们正在考虑在本地进程中托管一个简单的ASP.NET应用程序,只能从本地机器访问(类似于从Visual Studio调试时使用的ASP.NET开发Web服务器)。
如何在没有IIS的情况下在本地运行ASP.NET应用程序? IIS不是一个选项,因为大多数客户端计算机都不会安装它。
是否有一个可以在本地运行的轻量级ASP.NET Web服务器,类似于VS正在使用的开发Web服务器?
我找到了一些关于“Cassini”的信息。这适合生产用途吗?它可以处理ASP.NET MVC吗?我们应该考虑哪些替代方案?
答案 0 :(得分:2)
我自己没有使用它,但您可以尝试使用mono XPS服务器。
这是一个独立的网络服务器。
启动XSP的最简单方法是从应用程序的根目录中运行它。它将在端口8080上提供请求。将其他程序集放在bin目录中。
Cassini实际上也是一个不错的选择 - 它是Visual Studio附带的开发Web服务器(如此广泛分发,使用和测试),并且也被开源的ScrewTurnWiki使用。请参阅wikipedia。
关于您的“仅本地”要求 - Web服务器将提供对正确端口的任何请求。为了限制可访问性,您应该使用阻止任何外部请求的防火墙。
答案 1 :(得分:0)
您可以考虑使用WCF在本地计算机上托管可以提供数据的服务,而无需托管完整的Web服务器。
如果这样做,WCF允许您使用多个端点公开服务,并通过HTTP,TCP或Namepipes使其可用。 Namepipes会将流量限制为仅限本地计算机。
答案 2 :(得分:0)
我也试过IIS Express。它适用于ASP.NET MVC。现在它仅适用于Web Matrix,但安装web矩阵很容易。
答案 3 :(得分:0)
三年后回到这个问题,带有自托管选项的 ServiceStack.NET
似乎是一个不错的选择。虽然它不是直接的ASP.NET MVC,但它提供了一个很好的API,并且功能与ASP.NET MVC / WebAPI相同(或者在某些方面更好)。