2009-11-24 19 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引發了靈感。衛生署。