C# 为什么HttpContext.Current.Request.InputStream的长度始终为0?

C# 为什么HttpContext.Current.Request.InputStream的长度始终为0?,c#,asp.net-mvc-4,f#,httpcontext,C#,Asp.net Mvc 4,F#,Httpcontext,对不起,我对我的问题没有更好的描述。如果我发现了什么,我会编辑这篇文章 我正在构建一个F#-C#MVC4应用程序(在windows8中,使用visualstudio 2012 Express for Web)。一切顺利。我通过在服务器上执行以下操作,调用Ajax将XML数据发布到服务器: let str=(新的StreamReader(HttpContext.Current.Request.InputStream,new UTFEncoding()).ReadToEnd() 让xr=XEleme

对不起,我对我的问题没有更好的描述。如果我发现了什么,我会编辑这篇文章

我正在构建一个
F#-C#MVC4
应用程序(在
windows8
中,使用
visualstudio 2012 Express for Web
)。一切顺利。我通过在服务器上执行以下操作,调用Ajax将XML数据发布到服务器:

let str=(新的StreamReader(HttpContext.Current.Request.InputStream,new UTFEncoding()).ReadToEnd()
让xr=XElement.Parse str
直到大约一个小时前,这一切都很顺利。我刚吃完点心回到我的办公桌,现在,同样的电话再也不行了。我得到的错误是,
InputStream
的长度为“0”

实际上,调用堆栈中没有其他内容。MVC模板在名为
Global.fs
的文件中以以下函数注册路由:

type Global()=
继承System.Web.HttpApplication()
静态成员注册表项(路由:RouteCollection)=
routes.IgnoreRoute(“{resource}.axd/{*pathInfo}”)
routes.MapRoute(
“默认”,
“{controller}/{action}/{id}”,
{controller=“Home”action=“Index”id=UrlParameter.Optional})
我不想把文章弄得乱七八糟,但是控制器和所有必需的功能都绝对存在

我的工作站上还有几个项目使用相同的
F#-C#MVC4
模板,它们工作得非常好。他们有完全相同的设置


我在谷歌上搜索过,没有结果。如果有人能给我一些建议,告诉我如何去理解为什么InputStream的长度为0,我将不胜感激。

可能还有什么其他的东西是之前从输入流中读取的吗?您是否使用Wireshark/Fiddler2查看了网络流量,以确保它实际上是由客户端传递的?即使只是使用nbtstat查找打开的端口,以防端口死机等:您为什么要从MVC访问低级API?@JonSkeet,对不起,我已经上床睡觉了。我将检查网络流量并报告。@7sharp9,我将同一项目复制到Windows Server 2012(在另一台物理机上的虚拟机上运行),我遇到了同样的问题。