如何从C#中的js文件中获取JS对象

时间:2014-04-17 16:07:08

标签: c#

我有db.js文件,其中包含2种类型的javascript对象:问题,答案

var questions = [
    { id: 1, src: "images/findbugQ/P1.jpg", dif: 1, type: "findbugs", description: "" },
    { id: 2, src: "images/findbugQ/P2.jpg", dif: 1, type: "findbugs", description: "" }]


var answer= [
    { id: 1, questionId: 1, width: "12%", height: "6%", top: "7%", left: "65%" },
    { id: 2, questionId: 2, width: "7%", height: "6%", top: "8%", left: "11%" },
    { id: 3, questionId: 3, width: "5%", height: "6%", top: "6%", left: "50%" }]

我如何得到问题[1] .id在C#代码中,db.js文件的URL是/js/db.js

3 个答案:

答案 0 :(得分:0)

简单的回答。你不能

服务器端编码和客户端编码存在一些限制。

您可以做的是将JSON字符串发送到某个通用处理程序并从那里解析它。

答案 1 :(得分:0)

看看以下问题。您可以与这些引擎进行通信并以此方式获得答案:embedding javascript engine into .net

答案 2 :(得分:0)

您无法以您想要的格式在C#中加载JS文件。

但你可以采取以下方式。

  • 使用可以使用JavaScriptSerilizer
  • 反序列化的java脚本对象,而不是简单的两个数组

如果我必须这样做,我可以采取以下方式。

  1. 使用JS中所需的所有属性同名创建C#类。
  2. 我填充这些对象并使用JavaScriptSerilizer序列化这个对象,所以它给了我一种JSON格式。
  3. 下次无论我有什么数据,我都会填写JSON格式,这样我就可以在C#中使用。