C#bool值作为字符串始终为null
发布时间:2020-12-16 10:22:13 所属栏目:百科 来源:网络整理
导读:我试图将变量属性信息转储到一个简单的字符串,但当它到达我的可空bool时,as字符串总是返回null – 即使实际值为true |假! StringBuilder propertyDump = new StringBuilder();foreach(PropertyInfo property in typeof(MyClass).GetProperties()){ property
我试图将变量属性信息转储到一个简单的字符串,但当它到达我的可空bool时,as字符串总是返回null – 即使实际值为true |假!
StringBuilder propertyDump = new StringBuilder(); foreach(PropertyInfo property in typeof(MyClass).GetProperties()) { propertyDump.Append(property.Name) .Append(":") .Append(property.GetValue(myClassInstance,null) as string); } return propertyDump.ToString(); 没有例外;快速和输出正是我想要的除了任何属性bool?总是假的.如果我快速观察并做.ToString()它的工作原理!但我不能保证其他属性不是,实际上是null. 谁能解释为什么会这样?甚至更好,一个解决方法? 解决方法
如果实例具有该确切类型,则as运算符返回一个转换值,否则返回null.
相反,你应该.Append(property.GetValue(…)); Append()将自动处理空值和转换. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容