visual-studio - VS2010 开发 Web 服务器不使用集成模式 HTTP 处理程序/模块

标签 visual-studio httphandler web-config httpmodule

我正在使用 Visual Studio 2010 开发面向 .NET Framework 4.0 的 ASP.NET MVC 2 网站。

我的 web.config 包含以下代码:

<system.webServer>
    <modules runAllManagedModulesForAllRequests="true">
        <add name="XhtmlModule" type="DomenicDenicola.Website.XhtmlModule" />
    </modules>
    <handlers>
        <add name="DotLess" type="dotless.Core.LessCssHttpHandler,dotless.Core" path="*.less" verb="*" />
    </handlers>
</system.webServer>

当我使用 Build > Publish将网站放在我的本地 IIS7 实例上,效果很好。

但是,当我使用 Debug > Start Debugging , HTTP 处理程序和模块都不会在任何请求上执行。

奇怪的是,当我把处理程序和模块 <add />标签返回 <system.web /><httpHandlers /> 下和 <httpModules /> , 他们工作。这似乎意味着开发 Web 服务器正在以经典模式运行。

我该如何解决?

最佳答案

你没有。 WebDev.WebServer.exe 不支持也不支持集成管道。

因此,如果您的代码无法编写为在两种环境中执行,您将需要使用本地 IIS 进行开发。

基本上,system.web是配置 webdev 服务器和 IIS5-6 处理程序和模块的地方。 system.webServer如您所知,适用于 IIS7 处理程序和模块。

引用 :

中的每个请求WebDev.WebHost40 (和以前的版本)由 HttpRuntime.ProcessRequest 处理
(which does not support integrated pipeline mode)。这是 的所有三个版本中使用的方法。 WebHost.WebServer.dll ( WebDev.WebServer.exe 的核心)

some dude 的话通过管理 this project 对 Cassini/WebDev 的内部工作非常熟悉. ;-)

关于visual-studio - VS2010 开发 Web 服务器不使用集成模式 HTTP 处理程序/模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2708187/

相关文章:

visual-studio-2010 - Visual Studio 2010 web.config 转换(TransformWebConfig 目标)

asp.net - asp.net 中的 .NET : understanding web. 配置

c# - else 语句之前奇怪的自动缩进

C++:内联函数和链接时间代码生成

visual-studio - 如何在包管理器控制台之外运行 Entity Framework 命令?

python - main() 是否需要在每个包含处理程序的脚本中?

c# - HttpHandler isReusable,true 或 false 一次发送约 75 封电子邮件

visual-studio - FileNotFoundException: "Could not load file or assembly",尽管程序集存在

c# - 创建一个json格式的对象

asp.net - System.Web.UI.ScriptManager' 在未引用的程序集中定义。但它是在大会?