asp.net – 使用[WebMethod]转义的JSON响应
发布时间:2020-05-23 22:15:43 所属栏目:asp.Net 来源:互联网
导读:来自以下代码的JSON响应被错误地转义,如下所述. 我的网络方法是这样的: [WebMethod (Description=doc here)] [ScriptMethod(ResponseFormat=ResponseFormat.Json)] public string responseMyObject() { if (!Setup()) retu
|
来自以下代码的JSON响应被错误地转义,如下所述. 我的网络方法是这样的: [WebMethod (Description="doc here")]
[ScriptMethod(ResponseFormat=ResponseFormat.Json)]
public string responseMyObject() {
if (!Setup()) return "";
...
Proxy pu = new Proxy(...);
...
string toReturn = JavaScriptConvert.SerializeObject(pu.getMyObject());
Console.WriteLine(toReturn);
return toReturn;
}
从控制台我得到: {"field1":vaule1,"field2":value2}
来自JS: $.ajax({
type: "POST",url: "/myapi/myClass.asmx/responseMyObject",data: "{}",contentType: "application/json; charset=utf-8",dataType: "json",success: function(msg) {
var object = msg.d;
alert(object.field1);
}
});
问题是在HTTP响应头中我可以看到JSON响应以下列方式被错误地(?)转义: {"d":"{"field1":value1,"field2":value2}"}
奇怪的是控制台打印很好(但还没有封装在{d:…}中 {"field1":value1,"field2":value2}
使用类似的代码,如果我调用返回基本类型(无对象)的[WebMethod],JSON响应就可以了.喜欢: { “d”:8080} 解决方法[WebService]
[ScriptService]
public class MyWebService : WebService
{
[WebMethod (Description="doc here")]
[ScriptMethod( UseHttpGet=false,ResponseFormat=ResponseFormat.Json)]
public MyObjectType responseMyObject()
{
Proxy pu = new Proxy(...);
return pu.GetMyObject();
}
}
您不需要JSON序列化程序,使用ScriptService属性对其进行标记可以使其具有序列化JSON的能力.你正在序列化JSON,然后再次序列化:( (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 用于Kendo网格模板中的循环
- asp.net-mvc-3 – “字段宽度必须是数字.”在客户端
- entity-framework – 未找到可执行文件匹配命令“dotnet-ef
- asp.net-mvc – 如何在共享托管环境中实现ASP.Net MVC网站的
- asp.net-core-mvc – EntityFramework 7(EF7)迁移 DbContex
- asp.net – 为什么当StateProvider不是InProc时,不会引发Se
- asp.net-mvc – 如何将行的模型从Kendo Grid传递到可编辑的
- asp.net-mvc – 如何更改MVC Core ValidationSummary的默认
- asp.net-mvc – 如何在asp.net中使用Captcha mvc
- entity-framework – 如何升级EF Core Tools
推荐文章
站长推荐
- asp.net 禁用viewstate在web.config里
- asp.net – 我可以通过div onclick事件调用函数后
- asp.net-mvc-4 – 如何在MVC4中使用SimpleMember
- 使用ASP.NET MVC 3助手的标题属性的渲染跨度标签
- 如何使用ASP.NET获取访问者位置(国家,州和城市)
- asp.net-mvc-4 – 简单会员:用户的上次登录日期
- asp.net-mvc – 一种在MVC环境中处理返回URL的智
- ASP.Net,C#.Net和VB.Net之间的区别?
- asp.net – App Settings和connectionStrings配置
- ASP.NET System.Data.EntityClient连接字符串帮助
热点阅读
