我在创建的while循环中遇到了我的程序流问题。while循环程序流程
while (reader.Read())
{
// Store scenario information
int Id = (int)reader["ScenarioID"];
string Data = reader["ScenarioData"].ToString();
string Url = "http://google.com";
// Initialize result information
int HasSucceeded = 0;
var screenshot = new Byte[] { };
// Navigate to webBrowser
webBrowser2.Navigate(Url);
webBrowser2.DocumentCompleted += WebBrowserDocumentCompleted;
// Do test
TestScenarios(Url, HasSucceeded);
// Take screenshot
TakeScreenshot(screenshot);
// Insert results
InsertResults(Id, HasSucceeded, screenshot);
// Mark scenario for deletion
MarkScenario(Id);
}
private void WebBrowserDocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs Url)
{
MessageBox.Show("Operation has completed!");
}
该方案的预期流量应
- 在表
- 读取一个项目初始化一些变量/存储一些数值
- 导航web浏览器控件脚趾的URL
- 当web浏览器控制完成后,做一个测试
- 截图
- 将结果插入新表
- 将原始表中的项目标记为删除
- 回到#1,直到所有项目都已被覆盖。
然而,正在发生的事情是一切都在while循环正确为了除了为webBrowser2.Navigate
线,不显示地址,直到while循环已经退出运行。紧接着Url显示之后,出现了5个“操作已完成”的连续消息(表中的5个项目)。我如何解决流量问题?
当阅读器关闭时,我得到“无效尝试打电话阅读”,但感谢这个例子,我正在努力。 –
你在哪里调用'connection.close()'?不要在这个块之外调用它,而是在while循环后调用connection.close() –
因此,我在while循环后面调用'reader.Close();',但我认为它是'Start();'行这是导致异常,因为当我删除该行时,我没有得到一个异常,但它仍然无法正常工作。 –