Saya tahu pertanyaan ini telah ditanyakan sejak lama, tetapi saya pikir saya akan menambahkan referensi ke SqlProvider . Ini baru-baru ini memiliki dukungan untuk PostgreSQL yang ditambahkan ke dalamnya dan itu termasuk dukungan untuk SPROCS.
[<Literal>]
let connStr = "User ID=postgres;Password=password;Host=POSTGRESQL;Port=9090;Database=hr;"
[<Literal>]
let resolutionFolder = @"D:\Downloads\Npgsql-2.1.3-net40\"
type HR = SqlDataProvider<ConnectionString=connStr,DatabaseVendor=Common.DatabaseProviderTypes.POSTGRESQL, ResolutionPath = resolutionFolder>
let ctx = HR.GetDataContext()
ctx.Procedures.ADD_JOB_HISTORY(100, DateTime(1993, 1, 13), DateTime(1998, 7, 24), "IT_PROG", 60)
//Support for sprocs that return ref cursors
let employees =
[
for e in ctx.Functions.GET_EMPLOYEES().ReturnValue do
yield e
]
Di mana folder resolusi menunjuk ke lokasi rakitan NPGSQL .NET.