我正在尝试返回类似于以下内容的JSON数据集。让我告诉我,我只限于Visual Studio 2010和.NET 4.0。如何输出NULL或转换为空白?
"Application": {
"AppID": 3119385,
"ReportID": 4171130,
"AppReference": "Doran 23-Nov-16 10:46:59AM",
"CreateDT": "2016-11-23 10:48:38.5800000",
"ClientName": "GoGetta Brisbane",
"StoreName": "Brokers",
"Email": "",
"StoreCode": "GGT08",
"AppShortReference": "02",
"ClientNameShort": "GGT Bris",
"StoreNameShort": "GGT08",
"VerifyEmployer": null,
"VerifyAmount": null,
"VerifyFrequency": null,
"VerifyWeekday": null,
"LocalityCode": "en_AU",
"TemplateReportID": 12,
"daysRange": 90,
"templateReportName": "Enhanced Income Liabilities Full Report",
"isReportGraphEnabled": 1,
我正在尝试将其处理为SSIS中脚本组件的输出缓冲区。但是,尽管检查了它,我仍然会收到“无法将null转换为值类型”错误。
if (String.IsNullOrEmpty(rptContentOutput.Applications.Application.VerifyEmployer) == true)
{
ApplicationDetailsBuffer.VerifyEmployer = "";
}
else
{
ApplicationDetailsBuffer.VerifyEmployer = rptContentOutput.Applications.Application.VerifyEmployer;
}
我的课程定义如下。
public class Application
{
[JsonProperty("AppID")]
public int? AppID { get; set; }
[JsonProperty("ReportID")]
public int? ReportID { get; set; }
[JsonProperty("AppReference")]
public string AppReference { get; set; }
[JsonProperty("CreateDT")]
public string CreateDT { get; set; }
[JsonProperty("ClientName")]
public string ClientName { get; set; }
[JsonProperty("StoreName")]
public string StoreName { get; set; }
[JsonProperty("Email")]
public string Email { get; set; }
[JsonProperty("StoreCode")]
public string StoreCode { get; set; }
[JsonProperty("AppShortReference")]
public string AppShortReference { get; set; }
[JsonProperty("ClientNameShort")]
public string ClientNameShort { get; set; }
[JsonProperty("StoreNameShort")]
public string StoreNameShort { get; set; }
[JsonProperty("VerifyEmployer")]
public string VerifyEmployer { get; set; }
[JsonProperty("VerifyAmount")]
public double VerifyAmount { get; set; }
[JsonProperty("VerifyFrequency")]
public string VerifyFrequency { get; set; }
[JsonProperty("VerifyWeekday")]
public string VerifyWeekday { get; set; }
[JsonProperty("LocalityCode")]
public string LocalityCode { get; set; }
[JsonProperty("TemplateReportID")]
public int? TemplateReportID { get; set; }
[JsonProperty("daysRange")]
public int? daysRange { get; set; }
[JsonProperty("templateReportName")]
public string templateReportName { get; set; }
[JsonProperty("isReportGraphEnabled")]
public string isReportGraphEnabled { get; set; }
}
答案 0 :(得分:1)
好的,我误读了之前评论的代码,但我现在看到了。
问题是:
public double VerifyAmount { get; set; }
是一个值类型,JSON包含:
"VerifyAmount": null,
导致错误。修复是:
public double? VerifyAmount { get; set; }