使用JSONConvert反序列化JSON - 不编译

时间:2011-07-22 08:11:58

标签: json deserialization json.net

我正在使用VS2008。我引用了Newtonsoft.Json(Json.Net)库(v.3.5)(只是dll ......没有看到有关如何处理.pdb和xml文件的文档)。我在服务器2k3上运行.Net 3.5。文件中的其他webmethods成功使用Serialization.Json。

IntelliSense没有显示任何错误......但它不会编译。无法找到“类型或命名空间”var。 (由'v'表示)。

using Newtonsoft.Json;
[WebMethod(EnableSession = true)]
public string EvaluationTest(String EvalData)
{   v
   var EvalList = JsonConvert.DeserializeObject<EvaluationCollection>(EvalData);
   int rowscount = EvalList.Eval.Count;
   int firstobject = EvalList.eval.es;
}

我的班级:

namespace MyNamespace
{
   public abstract class EvaluationCollection
   {
    public abstract OneEvaluation eval { get; set; }
    private List<OneEvaluation> _eval = new List<OneEvaluation>();

    public List<OneEvaluation> Eval = new List<OneEvaluation>();

    public EvaluationCollection()
    {
    }
   }

public class OneEvaluation
{
    private int _EvalSession = 0;
    private String _Comment = " ";
    private String _DataDate;

    public OneEvaluation()
    {
    }

    public int es        {   // EvalSession
        get { return _EvalSession; }
        set { _EvalSession = value; }
    }
    ...
   }
  }

我想知道......我没有正确引用它吗?

1 个答案:

答案 0 :(得分:0)

这种方法的问题是我的web.config。

对于那些感兴趣的人...我在网站上同时拥有vb和c# - 我需要添加以下部分

<system.codedom>
        <compilers>
            <compiler language="c#;cs;csharp"
              extension=".cs"
              warningLevel="4"
              type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"   >
                <providerOption name="CompilerVersion" value="v3.5"/>
                <providerOption name="WarnAsError" value="false"/>
            </compiler>
        </compilers>
    </system.codedom>