在 JSON 中序列化 ASP.NET MVC 模型



我有一个这样的模型

public class Category : BaseFieldsTables
{
        public ICollection<Category> Categories { get; set; }
        public Category Parent { get; set; }
        public int? ParentId { get; set; }
}

我想将模型序列化为 JSON,这是我的控制器

    var categories =
            _efCategory.List().ToList().
                ToList().
                Select(x => new {id = x.Id, title = x.Name, children = x.Parent});
        string output = JsonConvert.SerializeObject(categories, Formatting.Indented,
                                                    new JsonSerializerSettings
                                                        {
                                                            PreserveReferencesHandling = PreserveReferencesHandling.Objects
                                                        });
        return Json(output.Replace, JsonRequestBehavior.AllowGet);

但我得到这个结果

    "[rn  {rn    "$id": "1",rn    "id": 1,rn    "title": "News",rn    "children": nullrn  },rn  {rn    "$id": "2",rn    "id": 2,rn    "title": "2012",rn    "children":
 {rn      "$id": "3",rn      "Categories": [rn        {rn          "$id": 
这是

正常的。您看到的只是字符串的转义版本(可能直接在 Visual Studio 中)。 rn相当于换行符,"只是逃避"的一种手段。输出时,这应该显示为正常。

相关内容

  • 没有找到相关文章

最新更新