【发布时间】:2017-08-05 02:04:00
【问题描述】:
我试图将我的 JSON 对象的字符串表示形式返回给我的 C# 应用程序,但是每次我使用 JSON.stringify(jsonObj) 时,它都会将 null 返回给我的应用程序。我正在使用WebBrowser 控件。
页面设置如下:
var myObj = { "foo": [] }
// Push data into it
function getMyObj() {
return JSON.stringify(myObj);
}
在我的 C# 代码中,我有这个:
string bar = myWebBrowser.MainBrowser.Document.InvokeScript("getMyObj").ToString();
但是,调用该方法后,它返回null。我什至尝试将alert 放在我在alert 中调用getMyObj() 函数的JavaScript 页面中,但警报从未出现。
这是WebBrowser 控制问题吗?应该支持JSON,浏览器使用的是IE11。
【问题讨论】:
-
控制台有错误吗?如果您在字符串化之前
console.log(myObj)怎么办? -
如果我在 IE、Firefox 或 Chrome 等网络浏览器中测试它,它会打印出对象内的数据。在应用程序中,
console.log(myObj)没有出现在控制台中,所以我没有得到任何输出。 -
是的,但是数据是什么样的?它有效吗?它是“可字符串化的”吗?
-
我看到一个带有数据数组的对象。它看起来有效。当我在 IE、Firefox 或 Chrome 中对其进行字符串化时:
{"data": [{"field1": "value"},{"field1": "value"}]}。但在 C# 应用程序中什么都没有。
标签: javascript c# json