首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >StreamReader问题

StreamReader问题
EN

Stack Overflow用户
提问于 2010-02-27 06:01:57
回答 2查看 207关注 0票数 1

如果我从这段代码的第一行开始放一个调试器,然后单步执行,那么在这一行之后我没有得到任何事件

代码语言:javascript
复制
    xmlData = reader.ReadToEnd(); 

但是如果我在这段代码的最后一行使用了调试器..在支架关闭的地方,我得到了一切。我不知道这只是调试器的疯狂行为,还是真的

代码语言:javascript
复制
using (StreamReader reader = new StreamReader(context.Request.InputStream))
{
    xmlData = reader.ReadToEnd();
}

谁能告诉我这是怎么回事。因为有时我无法从streamreader获取任何数据,即使数据被正确发送。

谢谢

EN

回答 2

Stack Overflow用户

发布于 2010-02-27 06:04:08

在调用ReadToEnd方法之前,读取器不会执行实际的“读取”。你想做什么?

票数 5
EN

Stack Overflow用户

发布于 2010-02-27 06:06:34

如果您将断点放在一行上,则中断发生在该行执行之前,因此您得不到任何数据也就不足为奇了。

但我怀疑你的意思是,你放置一个断点,然后慢慢地单步执行代码,直到你到达最后,然后检查变量的内容,发现它们是空的。

  • 一个原因可能是时间问题。可能是您正在读取的服务已超时。
  • 另一个原因可能是代码中的竞争条件。
  • 另一件让人感到意外的事情是,手表可能会产生副作用,而单步执行代码会导致手表被重新评估。这可以根据您放置断点的位置更改程序的状态。您应该小心,不要对在计算时有副作用的属性设置监视。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2345145

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档