2009-11-24 23 views
1

我正在使用JavaScript访问名为GetPerson()的ScriptService方法。 问题是它返回一个相当空的JSON字符串而不是实际的对象字符串。 当我返回一个新的DateTime对象时会发生同样的情况,所以我希望这个类没有问题。ASP.Net ScriptMethod生成空JSON

这将返回:

{"d":{"__type":"Person"}} 

这是我WebService.cs:

using System; 
using System.Collections; 
using System.Linq; 
using System.Web; 
using System.Web.Services; 
using System.Web.Services.Protocols; 
using System.Xml.Linq; 
using System.Web.Script.Services; 

/// <summary> 
/// </summary> 
[WebService(Namespace = "http://tempuri.org/")] 
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] 
[ScriptService] 
public class WebService : System.Web.Services.WebService 
{ 
    public WebService() { 
     //InitializeComponent(); 
    } 

    [WebMethod] 
    [ScriptMethod(ResponseFormat=ResponseFormat.Json)] 
    public Person GetPerson(string whatever) 
    { 
     Person x = new Person("gaga",DateTime.Now,null); 
     return x; 

    } 
} 

回答

3

所以事实证明,这的确是我的同班同学文件有问题。公共财产更好地工作。

public string name { get; set; } 

2小时的调试是没有什么,Stackoverflow引发了灵感。卫生署。