簡體   English   中英

什么是通過Selenium Webdriver在C#中獲取javascript對象的正確方法

[英]What is proper way to get javascript object by Selenium webdriver in c#

我有如下的javascript對象

var jsObj =
    {
        x: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
        y: [[29.9, 71.5, 106.4, 129.2, 144, 176, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4], [24, 70, 19, 128, 148, 178, 131, 140, 211, 190, 91, 50]],
        yname: ["mon-data", "mon-data2"]
    }

我在控制台應用程序中通過Selenium Webdriver獲得了此對象

IJavaScriptExecutor js = webBrowser1 as IJavaScriptExecutor;
string scp = "return window.jsObj ;";
var obj = (object)js.ExecuteScript(scp);

我正確地獲得了對象,然后嘗試將對象的值放入數組,如下所示

 string[] xaxis=obj.x;
 string[] name=obj.yname;
 double[][] yaxis = obj.y;

我試圖通過遍歷obj來做到這一點,但出現了錯誤。 在C#中處理此類對象的正確方法是什么?

將您的對象稱為IEnumerable。 它將允許您使用loop \\ foreach等。

foreach (var o in obj as IEnumerable)
{
    Console.WriteLine(o);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM