【问题标题】:C# Entity Framework using PostgreSQL, NPGSQL and stored procedures returning a table result parameter errors使用 PostgreSQL、NPGSQL 和存储过程的 C# 实体框架返回表结果参数错误
【发布时间】:2015-08-20 17:32:32
【问题描述】:
使用 .Net Framework 4.5、Entity Framework 6.0.0.0 和 NPGSQL,我尝试从数据库更新模型并使用从 PostgeSQL 存储过程(函数)返回表结果的存储过程。
我收到来自声明该列的存储过程的每一列的错误
...有一个参数方向值'null',它是无效的。请使用“IN”、“OUT”或“INOUT”
根据我对PostgreSQL的理解,在返回表的时候,不要指定IN或者OUT。
是否有解决方法,或者我是否缺少 .Net 或 PostgreSQL 的设置等?
【问题讨论】:
标签:
c#
entity-framework
postgresql
stored-procedures
【解决方案1】:
=> 你的定义:
Create function xpto (p1 integer, p2 varchar)
RETURNS TABLE (a int, b int) ...
=> 改变定义
Create function xpto (IN p1 integer, IN p2 varchar, OUT a int, OUT b int)
RETURNS SETOF record