MVC 视图 - JSON 无法从控制器正确解析



我无法理解为什么我的JSON解析不正确。 我正在将 c# 字典解析为控制器中的 JSON 字符串。那里的输出是正确的。 当我将字符串传递回我的部分视图时,它无法正确呈现,并且我得到了"意外令牌&"我尝试了多种方式将其返回到视图,但无济于事。

视图:

    var data = @Model.JSONDict
    //data output - var data = {"3/1/2014":2,"2/28/2014":1,"2/27/2014":1,"2/26/2014":0,"2/25/2014":0,"2/24/2014":0,"2/23/2014":0}

    //var keys = Object.keys(data);

控制器:

string output = JsonConvert.SerializeObject(dict);
//Resulting Output = "{"3/1/2014":2,"2/28/2014":1,"2/27/2014":1,"2/26/2014":0,"2/25/2014":0,"2/24/2014":0,"2/23/2014":0}"
            ViewData["allEntries"] = output;
            model.JSONDict = output;
            return PartialView("_Graph", model);

我也尝试解析这篇文章:像这样从 mvc 中的控制器解析 json 数据后无法在视图中获取数据 asp.net 但收到相同的错误消息:

storejson= getJSonObject("@ViewBag.JsonData");
function getJSonObject(value) {
    return $.parseJSON(value.replace(/"/ig, '"'));
}

问题是在输出中对 JSON 进行了编码。为了解决这个问题,你可以像这样使用@Html.Raw()

var data = @Html.Raw(Json.Encode(@Model.JSONDict))

但请注意,使用 @Html.Raw() 可能会导致一些安全问题,因此必须谨慎使用。