If I change the timestamp attribute to a date everything works fine. To test the problem you can create an Oracle Object like this:
Code: Select all
create or replace
TYPE DEVART_TEST_OBJECT as Object
(
TimeStampAttribute TIMESTAMP
);
Code: Select all
create or replace
PACKAGE BODY DEVART_TEST_PACKAGE AS
procedure DEVART_TEST_PROCEDURE(request jimg.DEVART_TEST_OBJECT) AS
BEGIN
NULL;
END DEVART_TEST_PROCEDURE;
END DEVART_TEST_PACKAGE;
Then use .NET like this:
Code: Select all
using (OracleConnection _connection = new OracleConnection("your connection string"))
{
_connection.Open();
OracleCommand _command =
new OracleCommand("jimg.DEVART_TEST_PACKAGE.DEVART_TEST_PROCEDURE", _connection);
_command.CommandType =
System.Data.CommandType.StoredProcedure;
OracleType _parameterType =
OracleType.GetObjectType("jimg.DEVART_TEST_OBJECT", _connection);
OracleObject _testObject = new OracleObject(_parameterType);
_testObject["TimeStampAttribute"] = DateTime.Now;
OracleParameter _parameter = new OracleParameter("request", OracleDbType.Object);
_parameter.Direction = System.Data.ParameterDirection.Input;
_parameter.Value = _testObject;
_command.Parameters.Add(_parameter);
_command.ExecuteNonQuery();
_connection.Close();
}