在asp.net和Oracle SQL中处理空值
如何处理空值 我有一个这样的物体:在asp.net和Oracle SQL中处理空值,asp.net,webforms,odp.net,Asp.net,Webforms,Odp.net,如何处理空值 我有一个这样的物体: public class Person { public string codSeller = ""; } 现在,当我想在DB中插入时,我添加了以下参数: Function that insert that value to BD(aPerson) using (OracleConnection conn = new OracleConnection(connectionString)) using (OracleComma
public class Person {
public string codSeller = "";
}
现在,当我想在DB中插入时,我添加了以下参数:
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();
}
我知道这行不通,如果codSeller为空或null,有没有办法插入int-oracle null值?
考虑到我必须将该字符串转换为int32并检查它是空的还是空的
编辑:
您是否尝试将codeSeller属性设置为可空
public class Person {
public int? codSeller = null;
}
有很多可能的解决方案。但是从谷歌开始,我发现了一种方法。if(string.IsNullOrEmpty(aPerson.codSeller)){cmd.Parameters.Add(“vCOD\u SELLER”,OracleDbType.Int32).Value=DBNull.Value;}else{cmd.Parameters.Add(“vCOD\u SELLER”,OracleDbType.Int32).Value=Convert.ToInt32(aPerson.codSeller)}在转换或解析值时,这种变量是否容易控制?因此,可为null的int将允许您根据需要存储null或整数值。您可以将字符串解析为整数并存储为可为null的int。
public class Person {
public int? codSeller = null;
}