从类的get里面返回null

时间:2011-11-25 07:36:47

标签: c#

我的模型中有以下内容:

    public string Subject { 
        get { 
            return SubjectReference.GetSubject(SubjectID);
        }
    }

我怎样才能这样做,如果SubjectID为null,那么get调用将返回null?我认为有一种方法可以做到这一点?运算符,但我可以在类的内部使用模型属性吗?

3 个答案:

答案 0 :(得分:4)

怎么样

public string Subject
{
   get
   {
       return SubjectID == null ? null : SubjectReference.GetSubject(SubjectID);
   }
}

string.IsNullOrEmpty(SubjectID)的空字符串也应该导致SubjectID返回时,您可以考虑使用null

如果您的属性是引用类型,那么当然null是合法的返回值。

答案 1 :(得分:3)

您可以使用常规if语句或三元运算符?运算符),如您所述。下面提供了各自的例子。


使用if语句:

public string Subject { 
    get { 
        if (SubjectID == null) {
            return null;
        }
        return SubjectReference.GetSubject(SubjectID);
    }
}

使用三元运算符:

public string Subject { 
    get { 
        return SubjectID == null ? null : SubjectReference.GetSubject(SubjectID);
    }
}

答案 2 :(得分:1)

你可以试试这个

public string Subject { 
    get { 
        return SubjectID==null ? null : SubjectReference.GetSubject(SubjectID);
    }
}