gpt4 book ai didi

c# - 使用 JSON.NET 返回 ActionResult

转载 作者:IT王子 更新时间:2023-10-29 03:50:14 25 4
gpt4 key购买 nike

<分区>

我正在尝试编写一个 C# 方法来序列化模型并返回 JSON 结果。这是我的代码:

    public ActionResult Read([DataSourceRequest] DataSourceRequest request)
{
var items = db.Words.Take(1).ToList();
JsonSerializerSettings jsSettings = new JsonSerializerSettings();
jsSettings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
var converted = JsonConvert.SerializeObject(items, null, jsSettings);
return Json(converted, JsonRequestBehavior.AllowGet);
}

当我在 Chrome 中转到 Words/Read 时,我得到了以下 JSON 结果:

"[{\"WordId\":1,\"Rank\":1,\"PartOfSpeech\":\"article\",\"Image\":\"Upload/29/1/Capture1.PNG\",\"FrequencyNumber\":\"22038615\",\"Article\":null,\"ClarificationText\":null,\"WordName\":\"the | article\",\"MasterId\":0,\"SoundFileUrl\":\"/UploadSound/7fd752a6-97ef-4a99-b324-a160295b8ac4/1/sixty_vocab_click_button.mp3\",\"LangId\":1,\"CatId\":null,\"IsActive\":false}

我认为\"转义引号是双重序列化对象时出现的问题。来自其他问题: WCF JSON output is getting unwanted quotes & backslashes added

看起来我确实在双重序列化我的对象,因为我首先使用 JSON.NET 进行序列化,然后将我的结果传递给 Json() 函数。我需要手动序列化以避免引用循环,但我认为我的 View 需要一个 ActionResult。

如何在此处返回 ActionResult?我需要返回一个字符串吗?

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com