当数据表中不存在变量sDate时,我一直得到空值表达式。只要表中有相应的日期,它就可以正常工作。 dvtta是表适配器。以下是我到目前为止的情况:
object StartingBal = 0;
StartingBal = (decimal)dvtta.Balance(acctno, sDate);
if (StartingBal.GetType() != typeof(DBNull))
{
StartingBal = (decimal?)StartingBal;
StartingBalance = Convert.ToDecimal(StartingBal);
}
else
{
StartingBalance = 0;
}
我一直在拔头发。任何帮助将不胜感激。
以下是Balance的代码:
SELECT SUM(AMOUNT) AS Expr1
FROM Trans
WHERE (ACCT = @account) AND (Date <= @baldate)
答案 0 :(得分:1)
您尝试过
if (StartingBal != null) { /* etc. */ }
如果它不返回任何东西,那么您不是将对象设置成StartingBal = null。在VB.NET中,这是“ StartingBal Nothing”,它在非常相似的情况下对我有用。