Обработка нулевого значения в asp.net и Oracle SQL - PullRequest
0 голосов
/ 01 мая 2018

Как я могу обработать нулевые значения?

У меня есть такой объект:

public class Person {
public string codSeller = "";
}

Теперь, когда я хочу сделать вставку в БД, я добавляю параметр:

Function that insert that value to BD(aPerson)

        using (OracleConnection conn = new OracleConnection(connectionString))
        using (OracleCommand cmd = new OracleCommand("PKG_TEST", conn))
        {
            conn.Open();
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.Add("vCOD_SELLER", OracleDbType.Int32).Value = Convert.ToInt32(aPerson.codSeller);
            cmd.ExecuteNonQuery();
        }

Я знаю, что это не сработает, есть ли способ вставить пустое значение int oracle, если codSeller будет пустым или пустым? Принимая во внимание, что я должен преобразовать эту строку в int32 и проверить, является ли она пустой или нулевой?

EDIT:

        if (string.IsNullOrEmpty(aPerson.codSeller))
        {
            cmd.Parameters.Add("vCOD_SELLER", OracleDbType.Int32).Value = DBNull.Value;
        }
        else
        {
            cmd.Parameters.Add("vCOD_SELLER", OracleDbType.Int32).Value = Convert.ToInt32(aPerson.codSelle);
        }

1 Ответ

0 голосов
/ 02 мая 2018

Вы пытались сделать свойство codeSeller как Nullable?

public class Person {
  public int? codSeller = null;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...