如何转换为json特定的类c#?我有错误

时间:2014-12-25 11:52:29

标签: javascript c# json

我有一些C#类。我想转换为Json。但是当我通过

进行转换时
@Html.Raw(Json.Encode(@Model))  

我在javascript中收到错误

  

未捕获的SyntaxError:意外的标识符

我在Firebug中看到这个字符串:

[{"Id":102,"Date":"\/Date(1419454800000)\/","Value":286890,"ListOfMetaL_Id":3,"ListOfMetal":null}]";

任何想法? 序列化程序的类c#

public partial class PriceOfMetal
{
    public int Id { get; set; }
    public System.DateTime Date { get; set; }
    public double Value { get; set; }
    public int ListOfMetaL_Id { get; set; }

    public virtual ListOfMetal ListOfMetal { get; set; }
}

控制器:

public ActionResult Graph()
{
    int id = (int)TempData.Peek("id");
    string time = TempData.Peek("date").ToString();
    DateTime data = DateTime.ParseExact(time, "d", CultureInfo.InvariantCulture);
    var result = _access.GetPrice(id, data);
    ViewBag.Json = new JavaScriptSerializer().Serialize(result));
    return View(result);
}

1 个答案:

答案 0 :(得分:0)

要解决此问题,您可以使用newtonSoft,这是一个Json框架。

1 - 使用程序包管理器控制台在Visual Studio项目中安装程序包:

PM> Install-Package Newtonsoft.Json

2 - 将您的第@Html.Raw(Json.Encode(@Model))行替换为

var model = @Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(Model));

现在您已在模型变量中序列化了javascript对象。您可以访问您的模型。

我希望它有所帮助。