我從這個循環中得到「索引超出範圍」。但我需要使用循環創建的新元素,我該怎麼做?請幫忙解決這個問題for循環「索引超出範圍」c#webdriver
int linkCount = driver.FindElements(By.CssSelector("a[href]")).Count;
string[] links = new string[linkCount];
for (int i = 0; i < linkCount; i++)
{
List<IWebElement> linksToClick = driver.FindElements(By.CssSelector("a[href]")).ToList();
links[i] = linksToClick[i].GetAttribute("href");
}
是的,你試圖訪問基於不同列表計數的列表元素。它看起來像點擊鏈接只需要移動到for循環之外,然後'鏈接'需要這個列表的計數。 – Sayse
不要在每次迭代循環中創建'List',而是在循環之前創建一個'List '。 –
'linksToClick'的長度與'links'不一樣。在外部循環中存儲'linksToClick'一次並在循環內使用它。如果它出於某種原因必須在循環內部,那麼我們不是你的調試器。 –