如何在 C# 中为 Oracle 中的 T_NARRAY 输出声明输出参数?

How to declare out parameter in c# for T_NARRAY output in Oracle?

执行时我得到一个 data type binding error。 Oracle 脚本正在返回 T_Narray OUT_PUT,我不知道如何在 c# out 参数上处理它。

dbManager.AddOutputParameters(1, "P_RESULT_ARRAY", "", OracleDbType.Raw, 100);

怎么办?

我的过程:

 PROCEDURE D_ARRAY
  (
    P_SOURCE               IN NVARCHAR2,
    P_RESULT_ARRAY         OUT T_NARRAY,
    P_RESULT_STATUS        OUT NVARCHAR2,
    P_RESULT_STATUS_TEXT   OUT NVARCHAR2 
  )

T_NARRAY 是用户自定义类型。也就是说,它是在数据库中定义的一个对象。您需要在 C# 中定义一个与数据库定义相匹配的自定义类型。 Find out more.

您可以通过查询Oracle数据字典来调查用户自定义类型的结构:ALL_TYPES and ALL_TYPE_ATTRS.