gpt4 book ai didi

asp.net - 从 ASP.NET 页面返回 JSON 对象

转载 作者:IT老高 更新时间:2023-10-28 12:44:00 30 4
gpt4 key购买 nike

在我的特殊情况下,我有几个解决问题的方法。我想找出哪个更可行。在这种情况下,我也可以通过从我的服务器端代码返回一个 JSON 对象来实现我的目标;但是,我不知道它是如何完成的,以及最好的方法是什么。

首先,我不需要完整的 aspx 页面,因为我只需要从代码返回的响应。那么,我是使用 Web 服务、处理程序还是有任何其他特定的方法来做到这一点?

这个解决方案可行吗?我是否使用 StringBuilder 类构建 JSON 字符串并将该字符串注入(inject)目标 aspx 页面?有什么注意事项或需要注意的事项吗?

我很欣赏你的想法。

问候,

凯末尔

------------更新!------------

假设我的 userlist.aspx 页面中有一个 JSON 对象,然后我将其与 jQuery 一起使用...

{"menu": {
"id": "color1",
"value": "color",
"popup": {
"menuitem": [
{"value": "Red"},
{"value": "Green"},
{"value": "Yellow"}
]
}
}} // example taken from the json.org/example page

现在,当我想从我的 aspx 页面添加新菜单项时,我该怎么做...我认为这样我的问题更具体...

假设我在我的 aspx 代码中创建了一个新字符串,例如 "{"value": "Blue"}。如何将其注入(inject)到目标页面中已经存在的项目列表中?或者这不是解决这种情况的正确方法吗?如果不是,还有什么方法可以实现?

另外,如果我想在将新项目添加到此列表时触发 jQuery 事件,这是如何实现的?

------------2015 年 8 月 26 日更新 2 ------------

当我问这个问题时,我处理问题的方式是另一方面。我现在对该主题更加精通,并且可以很高兴地接受投票最多的答案,因为解决此问题的方法显然不应该包括已经存在的 JSON 并从代码中输出一个新的 JSON,因为 @DavGarcia 也建议.

最佳答案

在您的 Page_Load 中,您需要清除正常输出并编写自己的,例如:

string json = "{\"name\":\"Joe\"}";
Response.Clear();
Response.ContentType = "application/json; charset=utf-8";
Response.Write(json);
Response.End();

要将 C# 对象转换为 JSON,您可以使用 Json.NET 等库。 .

尽管让您的 .aspx 页面输出 JSON,不如考虑使用 Web 服务 (asmx) 或 WCF,它们都可以输出 JSON。

关于asp.net - 从 ASP.NET 页面返回 JSON 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2422983/

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