Можете ли вы показать нам свою хранимую процедуру и / или метод db.AddInParameter()
? Не видя больше кода, это более или менее просто предположение:
Похоже, что передача DbType.Object
слою данных будет означать, что тип данных параметра должен быть BLOB (двоичный), но вы указали, что хотите, чтобы он был CLOB (символ).
Давайте предположим, что ваша хранимая процедура определена так:
CREATE PROCEDURE insert_XMLDOC (pid IN NUMBER, repo_document IN CLOB)
Если входной параметр object XMLDocument
является строкой или если ваш метод db.AddInParameter()
преобразует этот объект в строку или текстовое представление любого типа, тогда ваш уровень данных может пытаться назначить строку в качестве параметра BLOB.