1
這是代碼的片段,我就爲華廷跨越不同的結果時,斷點設置
if (!(strGCID.Substring(0, 3) == "BBP"))
{
string strDate;
Span spn = ie.Span(Find.ById("detail_page_section_1_section_b"));
for (int x = 1; x < 12; x++)
{
strDate = spn.TableCells[x].Text;
if (strDate.IndexOf("AM") > 0 || strDate.IndexOf("PM") > 0)
{
txtPurchaseDate.Text = DateTime.Parse(strDate).ToString("MM/dd/yyyy");
break;
}
}
}
工作基本上,如果我有一個斷點設置在以「strDate = SPN開頭的行。表「我的程序實際上是應該的方式,我發現在一個跨度塊內的數據。如果我刪除了斷點,我得到了一個數組的索引錯誤,我試着通過表格單元尋找日期。我一直在盯着代碼,並不知道爲什麼會發生這種情況。在這一點上,我認爲最簡單的事情是不打擾頁面上的日期。問題是,我沒有看到什麼?
OMG !!!這是它!吉茲。我一直在盯着我的代碼,忘記了我正在跳過前面的頁面,這些頁面通常會導致我試圖讀取單元格的頁面。我沒有給它足夠的時間來加載。在調試器中,由於它正在暫停,因此在檢查代碼時,頁面會加載。 – RVicta
很高興幫助!作爲一個經驗法則,每當我加載一個元素時,我總是斷言它存在(在你的情況下是spn.Exists),然後再嘗試使用它。解決了我的項目中不必要的錯誤! –