给字符串一个空值

时间:2015-06-18 12:49:03

标签: c# linq-to-entities nullable

我需要一些有关如何在下面的代码段中将此字符串设置为null值的信息。

[Index(IsUnique = true)]
[StringLength(450)]
public string StockCode
{
    get { return _stockCode; }
    set { _stockCode = value.ToUpper(); } //(ToUpper)<<-- Error
}

当我尝试以正常的方式public string? StockCode时,我会在.ToUpper收到错误,并说:

  

'System.Nullable'不包含'ToUpper'的定义   没有扩展方法'ToUpper'接受类型的第一个参数   可以找到'System.Nullable'(你是否错过了使用   指令或程序集引用?)

我不是专家或专业C#编码器,所以我不知道如何将我的字符串设置为空值并仍然按照我尝试的方式使用.ToUpper。 :(任何建议将不胜感激!

2 个答案:

答案 0 :(得分:6)

在尝试获取此属性时,不确定是否要面对所有复杂情况,而只是在应用ToUpper()之前添加空值检查

set { _stockCode = (value == null ? null : value.ToUpper()); }

答案 1 :(得分:1)

您不能在字符串上使用可空类型。默认情况下,String接受空值,可以通过string.IsNullOrEmpty(StockCode);

进行检查