发出 REST 请求时返回的 JSON 一切正常,除了任何 bool 属性,如果为 false,则不会包含在 JSON 中(通过 Fiddler 验证)。我试过了:
[DataMember(IsRequired = true)]
public bool success { get; set; }
但它仍然没有返回它。
有什么建议么?而且我确实喜欢它不会为空值返回任何内容,它只是我希望始终返回的布尔值。
WebApiConfig.cs:
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
config.MapHttpAttributeRoutes();
config.Formatters.XmlFormatter.UseXmlSerializer = true;
config.Formatters.JsonFormatter.SerializerSettings.DefaultValueHandling = Newtonsoft.Json.DefaultValueHandling.IgnoreAndPopulate;
config.Formatters.JsonFormatter.SerializerSettings.NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore;
}
}
数据源控制器.cs:
public class DatasourceController : ApiController
{
[HttpGet("datasource/metadata/{datasource}")]
public MetaDataInfo GetDatasourceSchema(string datasource, string node = "")
{
DocumentInfo docInfo = DocumentData.GetDocInfo("dave");
return MetaDataFactory.GetMetaDataInfo(docInfo, datasource, node);
}
}