Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 在应用程序中包括IIS_Asp.net_Iis_Iis Express - Fatal编程技术网

Asp.net 在应用程序中包括IIS

Asp.net 在应用程序中包括IIS,asp.net,iis,iis-express,Asp.net,Iis,Iis Express,我的公司有一个现有的软件产品,其中包括一个web服务/移动网站组件,该组件目前作为IIS中的应用程序存在。由于此应用程序由每个客户机托管(我们目前不提供集中托管,而且在可预见的将来可能不会提供),这意味着每个客户的服务器都必须安装和配置IIS才能使我们的服务正常工作 我们正在经历重写应用程序的过程,我正在研究删除IIS要求的可能性。我们的应用程序运行在各种各样的环境中(从运行XP Pro的工作站到2008 R2上的服务器),管理几个不同版本的IIS已经成为一个令人头疼的支持问题。我们想做一些类似

我的公司有一个现有的软件产品,其中包括一个web服务/移动网站组件,该组件目前作为IIS中的应用程序存在。由于此应用程序由每个客户机托管(我们目前不提供集中托管,而且在可预见的将来可能不会提供),这意味着每个客户的服务器都必须安装和配置IIS才能使我们的服务正常工作

我们正在经历重写应用程序的过程,我正在研究删除IIS要求的可能性。我们的应用程序运行在各种各样的环境中(从运行XP Pro的工作站到2008 R2上的服务器),管理几个不同版本的IIS已经成为一个令人头疼的支持问题。我们想做一些类似于SQL Server Reporting Services在2008中所做的事情,其中功能似乎相同,站点可以与IIS站点协作,但IIS不是必需的,也不是作为安装程序的一部分安装的

我们的新应用程序使用WCF通过web服务进行通信,并且自托管WCF服务非常简单。web应用程序(即为浏览器提供HTML)似乎是一个障碍。不可协商的一件事是,我们需要能够在Visual Studio中将站点开发为普通的ASP.NET web应用程序(Webforms或MVC),但我们希望在我们的服务中托管它们

我看过IIS Express和IIS可承载Web核心,但两者似乎都不符合我们的要求;IIS Express是一种外部产品,需要自己的安装程序,而可承载Web核心需要安装IIS


是否有任何东西可以让我们在Windows服务中嵌入功能齐全的ASP.NET兼容web服务器?

看看CassiniDev,它不需要任何安装:


IIS Express是一个选项吗?它支持返回到Windows XP的版本


其他几个选项包括:

  • 在CodePlex上

  • 框架附带的HttpListener类。它允许你 在没有IIS的情况下使用HTTP.sys。有关更多信息,请参阅文章和

  • -轻量级可嵌入ASP.NET web应用程序服务器


是一款小型(1.5 MB发行版)免费可再发行web服务器,可与应用程序安装程序捆绑在一起。它运行ASP.NET的所有功能,尽管其WCF支持仅限于basicHttp绑定,因为如果它在ASP.NET下运行,WCF希望由IIS托管。与IIS Express不同,它不依赖于.NET Framework 4,可以处理外部请求。

正如我在问题中所解释的,IIS Express是一个独立的产品;我们的目标是在进程中托管。好的,我想你的主要目标是不必支持所有不同版本的IIS。+1,这看起来是一个不错的选择。我希望得到支持,而不是开源,但如果这是我唯一合法的选择,那么我会接受。谢谢@亚当:我已经用了一段时间了,没有发现任何问题。但是,如果您想将Windows身份验证集成到服务器中,那么您必须稍微调整代码,然后使用它。您是否一直在使用它来自托管?如果是的话,你是如何提出申请的?它是否必须作为物理目录存在于计算机上,或者我可以从内存中为其提供服务?我不是将其用于自主机,而是将其用作备用服务器。但我不认为自我托管会很困难。我很高兴卡西尼号能做到这一点,直到我发现它不支持集成管道模式。因此,它无法在.NET framework中运行所有可用的内容。