调用Oracle存储过程时遇到问题。当我输入outputParameter是一个对象,但它仍然为空时,我还将InsightDbConnection与Execute方法一起使用。
这是我的代码
var storedProcedureName = "spTest";
object param = new { P_Param1 = "",//output parameter
P_Param2 = "Input parameter"
};
object output = new {P_Param1 = ""};
IDbConnection dbConnect = new OracleConnection(connectionString).OpenConnection();
dbConnect .Execute(storedProcedureName , param , outputParameters: output);
任何人都可以帮助我。
答案 0 :(得分:0)
您的输出对象是匿名类型。在c#中,匿名类型的属性是只读的,一旦创建,便无法更改。
有一个测试案例,展示了如何在oracle中使用输出参数: