2016-12-07 2 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

수단을 부울로 변환 할 수없는 조건을 추가해야합니다.

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 그럼 적어도 유용한 게시물을 upvote – 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"); 
관련 문제