C# 检查可能为null的变量长度时出错
我正在使用以下工具:C# 检查可能为null的变量长度时出错,c#,C#,我正在使用以下工具: if (Model.Notes.Length == null || Model.Notes.Length < 170) { if(Model.Notes.Length==null | | Model.Notes.Length
if (Model.Notes.Length == null || Model.Notes.Length < 170) {
if(Model.Notes.Length==null | | Model.Notes.Length<170){
但是当Notes值为null时出现错误。我以为这会允许它工作,但我仍然得到错误。有人能告诉我,即使Model.Notes为null,如何使其工作吗?在访问任何属性之前添加null检查
if (Model.Notes!=null)
{
if(Model.Notes.Length == null || Model.Notes.Length < 170)
{
//do the same awesome thing..
}
}
if(Model.Notes!=null)
{
if(Model.Notes.Length==null | | Model.Notes.Length<170)
{
//做同样可怕的事情。。
}
}
在访问任何属性之前添加空检查
if (Model.Notes!=null)
{
if(Model.Notes.Length == null || Model.Notes.Length < 170)
{
//do the same awesome thing..
}
}
if(Model.Notes!=null)
{
if(Model.Notes.Length==null | | Model.Notes.Length<170)
{
//做同样可怕的事情。。
}
}
你必须做:
if ((Model.Notes != null && (Model.Notes.Length == null || Model.Notes.Length < 170))
if((Model.Notes!=null&&(Model.Notes.Length==null | | Model.Notes.Length<170))
因此,它将首先检查notes是否为空。您必须执行以下操作:
if ((Model.Notes != null && (Model.Notes.Length == null || Model.Notes.Length < 170))
if((Model.Notes!=null&&(Model.Notes.Length==null | | Model.Notes.Length<170))
因此,它将首先检查notes是否为空。关于:
if (Model.Notes != null && (Model.Notes.Length == null || Model.Notes.Length < 170)) {
if(Model.Notes!=null&(Model.Notes.Length==null | | Model.Notes.Length<170)){
关于:
if (Model.Notes != null && (Model.Notes.Length == null || Model.Notes.Length < 170)) {
if(Model.Notes!=null&(Model.Notes.Length==null | | Model.Notes.Length<170)){
damn。我想你在这里可能有优势//do awesomedamn。我想你在这里可能有优势//do awesome关于下面的答案,除非Length
是一个可空类型(我怀疑)你将无法编译Model.Notes.Length==null
。但除此之外,它们是正确的。我相信你的意图是如果(Model.Notes==null | | | Model.Notes.Length<170)
关于以下答案,除非Length
是可为null的类型(我对此表示怀疑)你将无法编译Model.Notes.Length==null
。但在其他方面它们是正确的。我相信你的意图是如果(Model.Notes==null | | Model.Notes.Length<170)