添加新链接到LinkCollection WatIn

时间:2014-07-21 13:43:30

标签: c# asp.net watin

我有20个链接的div但我只需要包含href =“。do?”的链接。播种我不知道如何选择链接到linkCollection播种我做了什么是这需要所有20和1如果它们包含Href并且如果(true)尝试插入新的LinkCollection,但是我无法添加到新的LinkCollecton

我的代码

 LinkCollection TempLinksOfAccounts = browser.Div(Find.ByClass("module")).Links;
    LinkCollection LinksOfAccounts;
    int index = 0;
    for (int i = 0; i < TempLinksOfAccounts.Count; i++)
       {
        string Href = TempLinksOfAccounts[i].GetAttributeValue("href");

       if (Href.Contains("account-details.go?adx"))
            {
                               //Here i trying to do
LinksOfAccounts[index]=TempLinksOfAccounts[i];//fail
LinksOfAccounts.Add(TempLinksOfAccounts[i]);//fail
 LinksOfAccounts[index].Link=TempLinksOfAccounts[i];//fail
index++;

             }
         }

1 个答案:

答案 0 :(得分:0)

您无法直接创建链接集合,您需要使用其构造函数,该构造函数将返回链接集合。

var finder = new NativeElementFinder(
() => browser.Body.NativeElement.AllDescendants,
browser.DomContainer,
new[] { ElementTag.Any },
Find.By("href", new System.Text.RegularExpression.Regex(@"*account-details.go?adx*")));

LinkCollection lc = new LinkCollection(browser.DomContainer, finder);

现在lc将包含所有链接,其中包含href,如finder查询中所述。您可以根据需要修改查找程序查询。