c# - 如何在 C# 中将表类型作为输出参数添加到 Dapper 存储过程
问题描述
我正在使用 dapper 为我的 .Net Core 微服务应用程序连接到 Oracle 数据库。
在存储过程中,我有一个这样的输出参数。
PROCEDURE INSERT_PLAN_TEST
(
... other parameters goes here....
P_PARENT_PLAN_ID MFP_PLAN.PLAN_HEADER.PARENT_PLAN_ID%TYPE DEFAULT NULL,
OUT_PLAN_ID OUT NUMBER,
O_ERR_CODE OUT ERR_CODE
)
IS
此处,O_ERR_CODE的类型为TABLE OF varchar2(200)
现在,在我的 C# 方法中,我如何传递这样的参数?
public async Task<int> CreatePlanAsync(PlanHeader planHeader)
{
using (IDbConnection connection = _context.Database.GetOracleConnection())
{
connection.Open();
var _params = new DynamicParameters();
_params.Add("P_ORG_ID", planHeader.OrgId, DbType.Int32, ParameterDirection.Input);
..... other parameters goes here.....
_params.Add("O_ERR_CODE", null, <here i need to specify the type>, ParameterDirection.Output);
}
}
请帮助我。
解决方案
我假设,您不能在表值参数中返回数据。表值参数仅供输入;不支持 OUTPUT 关键字。
推荐阅读
- reactjs - Wolox React 聊天小部件
- mysql - 在任何索引上搜索 MySQL JSON 字段
- java - 创建一个名为 RubikRight 的 Rubik 类的子类
- windows - 在 UWP 中录制屏幕音频
- r - 如何将值向量作为变异的参数传递?
- angular - 将 mat-sort-header 升序/降序图标更改为自定义,如 font-awesome caret-down/caret-up Angular 8
- java - Java中语法解析器的正则表达式
- nginx - nginx proxy_pass 从应用程序以外的默认路径提供服务
- python - Django:如何在所有管理页面中排除模型字段?
- html - Unable to get Dynamic (Mobile) website design working properly