我在我的一台服务器上的日志中收到了很多这些错误消息,并且间歇性地在另外两台服务器上收到了这些错误消息。
谷歌搜索没有透露太多信息,主要与文件上传或下载被中断有关。
我的网页基本上只是文本文件中带有“ok”的文件,只有.aspx扩展名用于未来的计划,没有实际的代码为页面供电。服务器都是运行IIS7 / ASP.NET 4的Windows Server 2008 RC2 x64。
据统计,它在1%的时间内正好发生,但由于流量仍然使我的事件日志每分钟有2或3条消息混乱。
编辑: 我追踪了这个问题,将缓冲设置为true使其停止发生。
答案 0 :(得分:7)
我知道这已经得到了解答,但是在这有助于其他人的情况下,它发生在我的MVC项目中,有时当我在存储库的顶部设置了一个dbContext时。当我切换到用于数据库连接的using语句时,错误再也不会出现。
所以,我从每个存储库的顶部开始:
DbContext db = new DbContext();
对于每个单独的连接:
using (DbContext db = new DbContext())
{
//db connection stuff here....
}
值得一提的是,没有人报告过这个错误,并且没有向浏览器显示任何错误,但很高兴将其从日志中删除!
答案 1 :(得分:3)
您是否正在返回Stream
?
您可能需要在方法完成后关闭它。
看看这个:Closing Returned Streams in WCF
以下是此博客建议的代码:
public Stream GetFile(string path)
{
Stream fileStream = null;
try
{
fileStream = File.OpenRead(path);
}
catch(Exception)
{
return null;
}
OperationContext clientContext = OperationContext.Current;
clientContext.OperationCompleted +=
new EventHandler(delegate(object sender, EventArgs args)
{
if (fileStream != null) fileStream.Dispose();
});
return fileStream;
}