У меня есть метод, который может принимать параметры с нулевым значением, поскольку он заполняется из таблицы с нулевыми столбцами.как подавать параметр с нулевым значением в методе?
private void test(int ID, int? value)
{}
При вызове этого метода мне нужно каким-то образом передать ему переменную с нулевым значением, и есть моя проблема. Я попытался это:
foreach (DataRow row in DataTable1.Rows)
{
test((int)row["ID"], (int?)row["value"]);
}
, но он дает мне ошибку произнесения
"указанный литой не является допустимым"
Так что я попытался это:
foreach (DataRow row in DataTable1.Rows)
{
test((int)row["ID"], (int)row["value"] ?? DBnull.Value);
}
и это:
foreach (DataRow row in DataTable1.Rows)
{
test((int)row["ID"], (int)row["value"] ?? null);
}
но оба они дают мне ошибку
«Оператор ?? не могут быть применены к операндам типа междунар и нулевой
последнего я попытался это:
foreach (DataRow row in DataTable1.Rows)
{
test((int)row["ID"], (int?)row["value"] ?? null);
}
это один компилирует, но дает ошибку времени выполнения
«указанный бросок не действителен»
Так как я могу это сделать? Идея состоит в том, что значение параметра заполняется либо значением из таблицы, либо нулевым.