[英]Convert an OracleRefCursor to a List of custom C# Objects
I have a Dapper statement that returns an OracleRefCursor:我有一个返回 OracleRefCursor 的 Dapper 语句:
try
{
using (IDbConnection connection = Connection)
{
var parameters = new OracleDynamicParameters();
parameters.Add("refCursorReturn", null, OracleMappingType.RefCursor, ParameterDirection.Output);
IEnumerable<OracleRefCursor> temp = connection.Query<OracleRefCursor>("MySchema.MyStoredProc", parameters, commandType: CommandType.StoredProcedure);
//I need to convert the OracleRefCursor to an IEnumerable or List of MyObject
return IEnumerable<MyObject>;
}
}
catch (Exception e)
{
Console.WriteLine(e);
throw;
}
I can't find any documentation online about how to convert an OracleRefCursor to anything I can use.我在网上找不到任何关于如何将 OracleRefCursor 转换为我可以使用的任何文件的文档。
One way is (if ok with NOT using strong type like OracleRefCursor), then can use:一种方法是(如果可以不使用像 OracleRefCursor 这样的强类型),那么可以使用:
IEnumerable<dynamic> temp = null;
temp = connection.Query<dynamic>("MySchema.MyStoredProc", parameters, commandType: CommandType.StoredProcedure);
foreach (var dataRow in temp)
{
var fields = dataRow as IDictionary<string, object>;
// do something with fields. (store in datatable, list etc).
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.