c# – 调试本地IIS Web服务器上托管的ASP.NET MVC3应用程序

我已经设法使用本地IIS Web服务器来托管我的MVC3应用程序,我可以从托管它的机器上调试它和所有东西. – 但是,当我从另一台机器(我的Mac,在Parallels VM中运行我的 Windows)发送请求时,我得到了预期的结果,但调试器不会停在我的断点处!

我尝试添加一个Debugger.Break();我的行动,崩溃w3wp.exe ..

To,总结一下:本地请求正在运行,可以调试.外部请求正在运行,但无法进行调试.

在我的项目属性中,我设置了使用本地IIS Web服务器,未选中使用IIS Express.

我正在使用Visual Studio 2012 Professional.该项目是基于Azure SDK的,附加的进程是WaIISHost.exe.

解决方法

问题是,由于我已将IIS服务器设置为在端口83上提供服务,而本地我将在端口81上访问,因此调试器不会监视这些请求.

解决此问题(或者,通常在Cassini Web服务器上远程调试),请下载名为rinetd的工具,这是一个非常简单的流量重定向器守护程序,并在您将其解压缩到的文件夹中创建config.cfg.格式为< source ip> < source port> < dest中. IP> < dest port>.所以,在我的Mac上,我转到Safari中的这个地址:192.168.1.23:8080 / Controller / Action,然后将其重定向到localhost:81 / Controller / Action,就好像它是本地请求一样!这是config.cfg的示例:

192.168.1.23 8080 127.0.0.1 81

或者,您可以使用您的PC名称,以避免在DHCP为您提供新地址时分配静态IP或更改配置:

Jeff-PC 8080 127.0.0.1 81

然后,打开命令提示符,并cd到您的rinetd文件夹,然后运行rinetd.exe -c config.cfg.

奇迹般有效.

相关文章

目录简介使用JS互操作使用ClipLazor库创建项目使用方法简单测...
目录简介快速入门安装 NuGet 包实体类User数据库类DbFactory...
本文实现一个简单的配置类,原理比较简单,适用于一些小型项...
C#中Description特性主要用于枚举和属性,方法比较简单,记录...
[TOC] # 原理简介 本文参考[C#/WPF/WinForm/程序实现软件开机...
目录简介获取 HTML 文档解析 HTML 文档测试补充:使用 CSS 选...