2016-12-07 24 views
1

最初の要素をtryブロックのStringに変換するにはどうすればよいですか?は、型文字列をBoolに変換できません。

ToString()も同様に変換しようとしました。それもエラーを投げている。

foreach (var column in elementIndex) 
{ 
    try 
    { 
     columnHeaders[index] = driver.FindElements(By.CssSelector("#columntable" + table.TableID + " > div:nth-child(" + column + ")")).First(e => e.FindElement(By.CssSelector("div > div:nth-child(1) > span")).Text);      
    } 
    catch 
    { 
     columnHeaders[index] = driver.FindElement(By.XPath("//div[@id='columntablegrid']/div[" + column + "]/div/div")).Text; 
    }      
    index++; 
} 
+2

何のエラー? rはそれを上げていますか? – Doruk

答えて

3

First()boolパラメータを必要とするが、あなたはそれをstringを与えています。あなたは条件に

First(e => e.FindElement(By.CssSelector("div > div:nth-child(1) > span")).Text.equals(parameterToCompare)); 

を追加する必要が

boolが予想されるときには、すでに他の方法で回避、stringを持っていないことを意味しBOOLするタイプの文字列を変換することはできません。

2

私はあなたがこの

First(e => e.FindElement(By.CssSelector("div > div:nth-child(1) > span")).Text == "your condition to bring back the first element");

+0

ありがとうございます!私にはっきり聞こえる音.. – ChanGan

+0

@ChanGanその後、少なくとも役に立つ記事を投稿してください。 – rbr94

+0

ありがとうございました。 – ChanGan

1

あなたのFirst句で条件を追加する必要があるようなものが必要あなたの問題はここに

First(e => e.FindElement(By.CssSelector("div > div:nth-child(1) > span")).Text);

であると考えている:

driver.FindElements(By.CssSelector("#columntable" + table.TableID + " > div:nth-child(" + column + ")")) 
     .First(e => e.FindElement(By.CssSelector("div > div:nth-child(1) > span")).Text == "condition"); 
関連する問題