如何从 PetaPoco(使用 Npgsql)执行 PostgreSQL 存储过程?
How to execute a PostgreSQL stored procedure from PetaPoco (with Npgsql)?
给定一个 PostgreSQL (9.5) 存储过程(带有 Npgsql 驱动程序)为:
CREATE OR REPLACE FUNCTION "GetAllDx"(
patient_recid integer,
tencounter timestamp without time zone) RETURNS SETOF view_dx
这是如何从 PetaPoco 执行的?可以吗? (我一直在使用 Dapper)。
非常感谢任何帮助。
很简单,
[TestMethod]
public void GetAllPatientsWithServices()
{
// Create a PetaPoco database object
var db = new chaosDB("localconnection");
// Calling stored procedure getallpatientswithservices()
var a = db.Fetch<view_patient>("Select * from getallpatientswithservices()");
foreach( var b in a)
{
Console.WriteLine("{0} - {1}", b.cpatient, b.chart_number);
}
}
或者,使用大小写混合的过程名称:
[TestMethod]
public void GetDxLibrary()
{
// Create a PetaPoco database object
var db = new chaosDB("localconnection");
// Calling stored procedure with mixed case name
var a = db.Fetch<icd9>("Select * from \"GetDxLibrary\"()");
foreach (var b in a)
{
Console.WriteLine("{0} - {1}", b.code,b.cdesc);
}
}
给定一个 PostgreSQL (9.5) 存储过程(带有 Npgsql 驱动程序)为:
CREATE OR REPLACE FUNCTION "GetAllDx"( patient_recid integer, tencounter timestamp without time zone) RETURNS SETOF view_dx
这是如何从 PetaPoco 执行的?可以吗? (我一直在使用 Dapper)。
非常感谢任何帮助。
很简单,
[TestMethod]
public void GetAllPatientsWithServices()
{
// Create a PetaPoco database object
var db = new chaosDB("localconnection");
// Calling stored procedure getallpatientswithservices()
var a = db.Fetch<view_patient>("Select * from getallpatientswithservices()");
foreach( var b in a)
{
Console.WriteLine("{0} - {1}", b.cpatient, b.chart_number);
}
}
或者,使用大小写混合的过程名称:
[TestMethod]
public void GetDxLibrary()
{
// Create a PetaPoco database object
var db = new chaosDB("localconnection");
// Calling stored procedure with mixed case name
var a = db.Fetch<icd9>("Select * from \"GetDxLibrary\"()");
foreach (var b in a)
{
Console.WriteLine("{0} - {1}", b.code,b.cdesc);
}
}