Web services javascriptserilizer未正确序列化
我有一个Web服务,其中只有一个方法Web services javascriptserilizer未正确序列化,web-services,javascriptserializer,Web Services,Javascriptserializer,我有一个Web服务,其中只有一个方法 [WebMethod] public string GetMovies() { using (var dataContext = new MovieCollectionDataContext()) { var query = dataContext.Movies.Select(m =>new{m.Title,m.ReleaseDate}).
[WebMethod]
public string GetMovies()
{
using (var dataContext = new MovieCollectionDataContext())
{
var query = dataContext.Movies.Select(m =>new{m.Title,m.ReleaseDate}).Take(20);
var serializer = new JavaScriptSerializer();
return serializer.Serialize(query);
}
}
它序列化了对象,但当我在firebug中得到结果时,它看起来是这样的
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/">[{"Title":"SQL","ReleaseDate":"\/Date(1224007200000)\/"},{"Title":"Termonator Salvation","ReleaseDate":"\/Date(1224007200000)\/"}]</string>
在上面的jquery中,即使在调用时也有一个错误。我得到了这个错误
SyntaxError: JSON.parse: unexpected character
请帮助我获得正确的JSON plz我真的需要正确的JSON来完成我的工作你到底想解析什么?整个响应不会被解析,因为它是XML,而不是json。如果您试图只解析string元素的值,那么您可能需要将其用引号括起来 更新:
JSON.parse(“[{”Title:“SQL”,“ReleaseDate:“\/Date(1224007200000)\/”},{”Title:“termonatorsavation”,“ReleaseDate:“\/Date(1224007200000)\/”)”)
这篇博客文章展示了如何从ASMX服务返回JSON:
下面是一个正在运行的项目,展示了如何将剑道网格绑定到ASMX服务:请查看我的编辑问题,我实际上想做的可能是您理解我想表达的意思。但是,返回的数据类型不是json。这就是xml。您需要将服务配置为返回json.something,例如
SyntaxError: JSON.parse: unexpected character