是否可以在IIS之外的独立应用程序中托管ASPX网页

我在桌面上有一个很厚的GUI应用程序(可能作为服务运行,但也像普通应用程序一样运行)。 我想向应用程序公开一个Web界面,以便对应用程序进行一些远程监视和控制。

我目前正在托管一个WCF服务,它只返回应用程序中的HTML,这很好,但最好我想使用ASP.Net应用程序或silverlight应用程序。

有没有办法在我的应用程序中托管aspx或silverlight应用程序?

作为其中的一部分,我希望能够在两个应用程序之间共享数据。

是。 你甚至不需要Cassini,因为它包含已经存在于框架中的ASPX托管位,它们都在System.Web.Hosting中

MSDN上有一篇很好的文章

内置于VS中的小型Web服务器称为Cassini,您可以在某处下载源代码。 不起诉版本和许可证。

Cassini提供(演示)ASP Hosting的东西。

ScottHa有一篇关于托管Cassini进行unit testing的文章。 我之前使用它,经过一些细微的修改,用于unit testing,效果很好。

不知道你直接使用HTTP.SYS会得到什么差异,但我认为要么两者都应该运行得很好。

正如我所看到的,对您而言最简单的解决方案是在您的应用上放置浏览器控件,在浏览器中放置一个silverlight应用,

如果你想在应用程序和silverlight之间共享数据,你可以尝试将应用程序中的wcf服务暴露给silverlight,如果它工作也非常简单。