如何检查和替换C#中的空值

cod*_*apt 1 c# null

任何人都可以指导我检查和替换strList中的空值与String消息"NO DATA"或在dtList中允许它们.因为当我在此List中遇到空值时,它会显示一个错误,例如"位置没有行......"

private DataTable getSomething1(String text){
    DataTable dtb = new DataTable();
    ...
    ...
    return dtb;
}

...

protected void buttonCheck_Click(object sender, ImageClickEventArgs e){
    List<DataTable> strList = new List<DataTable>(){
        getSomething(txtInput.Text),
        getSomething2(txtInput.Text),
        getSomething3(txtInput.Text),
        ...                
    };
}
Run Code Online (Sandbox Code Playgroud)

我在Webform中使用了C#.Plz,帮我修复这段代码或指导我解决它的方法.提前致谢.

@tech,@ riffnl:最后,我得到了你所有的想法,现在它确实有效.Anw,感谢所有专业人士的建议.所以,这是我的解决方案^^

private String ConvertNullToEmptyString(DataTable element)
    {
        if (element.Rows.Count > 0) //just add this condition here
        {
            if (!DBNull.Value.Equals(element.Rows[0]["FullName"]))
                return (string)element.Rows[0]["FullName"] + " ";
            else
                return String.Empty;
        }
        return "NO DATA";
    }

protected void ....(){
     List<DataTable> strList = new List<DataTable>(){
       GetItem1(txtName.Text),   //private DataTable GetItem1(String t)
       GetItem2(txtName.Text),   //...           
     };

    txtGrD_D.Text = ConvertNullToEmptyString(strList[0]);
    txtGrM_D.Text = ConvertNullToEmptyString(strList[1]);
}
Run Code Online (Sandbox Code Playgroud)

McG*_*gle 7

你可以使用C#的空合并运算符 ?? :

string s = null;
s = s ?? "NO DATA";
// s now equals "NO DATA";
Run Code Online (Sandbox Code Playgroud)