linq检查是否匹配null或所选项

时间:2013-05-14 08:36:24

标签: c# asp.net sql-server linq

我正在检查项目是否已经与MSSQL DB中的内容匹配。我正在使用LINQ来更新记录。我想知道如何检查项目是否等于d_0_2或者它是否等于null / empty。我该怎么做呢?

下面是我现有的代码,部分有效。但由于null / Empty

而失败
 if (updateProduct.studioId == Convert.ToInt32(d_0_2.SelectedValue)) { }
 else { updateProduct.studioId = Convert.ToInt32(d_0_2.SelectedValue);}

提前致谢。

2 个答案:

答案 0 :(得分:1)

我不确定我是否理解你的问题,但你想检查项目是否为空或如果不是,它是否工作室等于d_0_2.SelectedValue

if (updateProduct == null)
{
     //create new update product
}
else if (updateProduct.studioId != Convert.ToInt32(d_0_2.SelectedValue))
{
     updateProduct.studioId = Convert.ToInt32(d_0_2.SelectedValue);
}

答案 1 :(得分:0)

string value = d_0_2.SelectedValue.ToString();
// what if SelectedValue is empty or null?
if (!string.IsNullOrEmpty(value))
    return;
// what if product is null?
if (updateProduct != null)
    return;

if (updateProduct.studioId != null &&
    updateProduct.studioId == Convert.ToInt32(value))
{
    // you have product and its id equal to d_0_2.SelectedValue
}
else
{
    // studioId not equal to to d_0_2.SelectedValue
    updateProduct.studioId = Convert.ToInt32(value);
}