出现以下错误ternary operator
。
错误:无法确定条件表达式的类型,因为 '' 和 'int' 之间没有隐式转换
即使我已指定结果,为什么还会出现此(int)(result)
错误ExecuteScalar
?我们怎样才能纠正它?
代码
public int? GetWINFromAssociateID(int associateID)
{
int? WIN =null;
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
string commandText = DataLayerConstants.GetWINFromAssociateIDCommand;
using (SqlCommand command = new SqlCommand(commandText, connection))
{
command.CommandType = System.Data.CommandType.Text;
command.Parameters.AddWithValue("@payroll_svc_assoc_id", associateID);
var result = command.ExecuteScalar();
WIN = result == DBNull.Value ? null : (int)(result);
}
}
return WIN;
}
更新的参考文献