C# ASP.Net脚本方法生成空JSON

C# ASP.Net脚本方法生成空JSON,c#,asp.net,json,web-services,responseformat,C#,Asp.net,Json,Web Services,Responseformat,我正在使用JavaScript访问名为GetPerson()的ScriptService方法。 问题是它返回的是一个相当空的JSON字符串,而不是实际的对象字符串。 当我返回一个新的DateTime对象时也会发生同样的情况,所以我希望这个类是不存在问题的 这是返回的: {"d":{"__type":"Person"}} 这是我的WebService.cs: using System; using System.Collections; using System.Linq; using Syst

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

这是返回的:

{"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;

    }
}
使用系统;
使用系统集合;
使用System.Linq;
使用System.Web;
使用System.Web.Services;
使用System.Web.Services.Protocols;
使用System.Xml.Linq;
使用System.Web.Script.Services;
/// 
/// 
[WebService(命名空间=”http://tempuri.org/")]
[WebServiceBinding(ConformsTo=WsiProfiles.BasicProfile1_1)]
[脚本服务]
公共类WebService:System.Web.Services.WebService
{
公共Web服务(){
//初始化组件();
}
[网络方法]
[ScriptMethod(ResponseFormat=ResponseFormat.Json)]
公共人物GetPerson(字符串任意)
{
Person x=新人(“gaga”,DateTime.Now,空);
返回x;
}
}

因此,这确实是我的类文件的一个问题。使用公共属性时效果更好

public string name { get; set; }
与Stackoverflow引发的灵感相比,2小时的调试算不了什么。doh