Awesomium C# |需要帮助从许多元素中获取随机元素

Awesomium C# | Need Help getting an random Element from many Elements

在这段代码中我得到了所有人的数量。这奏效了。 现在我想从所有人中随机抽取一个人,但这行不通。我在 using (person) 行得到一个 Microsoft.CSharp.RuntimeBinder.RuntimeBinderException 对不起我的英语。

这里是代码:

dynamic document = (JSObject)webControl1.ExecuteJavascriptWithResult("document.getElementsByClassName(\"badge\")[1]");
using (document)
{
    string gg = document.innerHTML;
    personcount = Convert.ToInt16(gg);
}

int selectperson = rnd.Next(0, personcount-1);

dynamic document2 = (JSObject)webControl1.ExecuteJavascriptWithResult("document.getElementsByTagName('a')");
using (document2)
{
    dynamic person = document2.getElementByClassName("name")[selectperson];
    using (person)
    {
        MessageBox.Show(person.innerText);
    }
}

这是来自示例人物的 HTML 标签:

<a class="name" href="http://kontakt-4.dastelefonbuch.de/Neuwied/Martin-Kaiser-Neuwied-Feldkircher-Str.html" rel="nofollow">

我不知道如何做到这一点。但是我现在找到了另一种方法,一切正常,谢谢! :)

                dynamic document = (JSObject)webControl1.ExecuteJavascriptWithResult("document.getElementsByClassName(\"badge\")[1]");
                string gg = document.innerText;
                personcount = Convert.ToInt16(gg);

                int odd = rnd.Next(1, personcount * 2);
                for (int i = 0;odd % 2 == 0;i++)
                {
                    odd = rnd.Next(1, personcount * 2);
                }
                dynamic document2 = (JSObject)webControl1.ExecuteJavascriptWithResult("document.getElementsByClassName('name')["+odd+"]");
                using (document2)
                {
                    if (document2.HasMethod("click"))
                    {
                        document2.Invoke("click");
                        stepcount = 2;
                    }
                }