0

我有一个需要帮助的困境。该方法TAXCheckControlNumberForAccuracy进入数据库并Select *使用传入的变量执行语句。

但是,每次程序运行时,这些变量中的任何一个都可能为空。都可以为空。没有一个可以为空。(我使用 OCR 来获取变量..所以它并不总是准确的)

有人可以给我一些关于解决这个问题的最佳方法的见解。

if ((City != null) && (Zip != null) && (State != null) && (Owner != null))
            {
                if (City.Length > 4)
                {
                    ControlNumberMatch = TAXCheckControlNumberForAccuracy(Owner, Zip, State, City);
                }
            }
4

2 回答 2

2

您可以使用带有可选参数的方法。像

public void TAXCheckControlNumberForAccuracy(string Owner = "default", 
       string Zip = "default",string  State = "default",string City = "default");
于 2013-08-29T16:08:15.513 回答
1

无论您做什么,您仍然需要单独检查每个参数。创建一个这样做的方法。

void string CorrectParam(string param)
{
    if (param == null)
        return "default";
    return param;
}

void TAXCheckControlNumberForAccuracy(string City, string Zip, string State, string Owner)
{
}

//call using this
TAXCheckControlNumberForAccuracy(CorrectParam(City), CorrectParam(Zip), CorrectParam(State), CorrectParam(Owner));
于 2013-08-29T16:26:37.153 回答