I was wondering what the correct format of using DBNull for identifying the parameter.
Code: Select all
		private OracleCommand CreateCommand(String szQuery, Parameter[] aParameters)
		{
			OracleParameter l_oOracleParameter; 
			OracleCommand l_oOracleCommand = new OracleCommand(szQuery, m_oOracleConnection, m_oOracleTransaction);
			l_oOracleCommand.CommandType = CommandType.Text;
			
			for (int i = 0; i < aParameters.Length; i++) 
			{
				l_oOracleParameter = new OracleParameter(":" + aParameters[i].Name, ConvertType(aParameters[i]), aParameters[i].Size);
				l_oOracleParameter.Direction = ParameterDirection.Input;						
				if (aParameters[i].Data is DateTime &&
					aParameters[i].Data.Equals(DateTime.MaxValue)) 
				{
					l_oOracleParameter.Value = DBNull.Value;
				}
				else
				{
					if (IsEmptyData(aParameters[i])) 
					{
							l_oOracleParameter.IsNullable = true;
							l_oOracleParameter.Value = DBNull.Value;
					}
					else
						l_oOracleParameter.Value = aParameters[i].Data;
				}
				l_oOracleCommand.Parameters.Add(l_oOracleParameter);
				log.Warn("'" + l_oOracleParameter.Value + "'");
			}
			return l_oOracleCommand;
		}
IsEmpty checks if my parameter is null, and if it is, I try setting the new parameter I'm creating to DbNull. Still getting some problems though...
Do I also need to do that IsNullable every time?
any ideas?