C# JToken.ToObject一次又一次地给出相同的值
我有以下方法C# JToken.ToObject一次又一次地给出相同的值,c#,json.net,C#,Json.net,我有以下方法 public void Handle(JToken jsonTable) { var myvar = jsonTable.ToObject<abcTable>(); // other code } 当我调用Handle方法--jsontable有Column1=“a”和Column2=“b”,而Column3不存在 经过.ToObject()之后,myvar将获得Column3=false以及其他两个值 在对象形成后,我
public void Handle(JToken jsonTable)
{
var myvar = jsonTable.ToObject<abcTable>();
// other code
}
当我调用Handle方法--jsontable有Column1=“a”和Column2=“b”,而Column3不存在
经过.ToObject()之后,myvar将获得Column3=false以及其他两个值
在对象形成后,我需要Column3=null
我们衷心感谢您的帮助
谢谢如评论中所述,bool不能设置为null。创建为类型
bool
的任何变量将自动设置为false
,而不是null
。要创建可设置为null的布尔值,请使用可为null的类型bool?
public bool? Column3
{
get;
set;
}
现在,您可以像平常一样设置Column3:
Column3 = true;
获取该值要简单一些:
if (Column3.HasValue) // Check if Column3 is not null
{
boo value = Column3.Value;
// process the value here
}
Column3
不能为null,因为bool
是一种值类型。你可以用bool?
,但即使这样,你的问题也不是很清楚。你能举一个你正在处理的JSON和预期输出的例子吗?@AndrewHitaker谢谢,布尔?解决了这个问题。。。
if (Column3.HasValue) // Check if Column3 is not null
{
boo value = Column3.Value;
// process the value here
}