检查整数数据集值是否返回dbnull值

时间:2014-03-21 16:00:59

标签: c# asp.net

我无法检查返回的值是否在C#中具有DBnull值。

这是我的代码

LoanDSTableAdapters.LoanApplicationsTableAdapter loanApp = 
    new LoanDSTableAdapters.LoanApplicationsTableAdapter();

LoanDS.LoanApplicationsDataTable loanAppDetails = 
    loanApp.GetLoanApplication(MySessionManager.AppID.ToString());

if (loanAppDetails.Rows.Count > 0)
{
    int newclient;
    if (!loanAppDetails[0].datNewClient == DBNull.Value)
    { 
        newclient = 1; 
    }
    else 
    { 
        newclient = Convert.ToInt32(loanAppDetails[0].datNewClient.ToString()); 
    }

这是我得到的错误,这让我疯了:

  

运营商“!”不能应用于“int”类型的操作数

1 个答案:

答案 0 :(得分:1)

正如Uwe所说,你需要提高你的c#技能。

if (loanAppDetails[0].datNewClient != DBNull.Value)

是要走的路。相反,你告诉编译器否定一个int,然后将它与DbNull进行比较 - 这是不可能的。