1.2 KiB
1.2 KiB
Stored Procedures
Stored procedure support is available through db.Procedures when DynamicDatabaseOptions.SupportStoredProcedures is enabled.
Basic Invocation
var scalar = db.Procedures.sp_Exp_Scalar();
var scalarTyped = db.Procedures.sp_Exp_Scalar<int>();
Input, Output, Return Parameters
Prefixes in argument names control parameter direction:
out_for outputret_for return valueboth_for input/output
Example pattern:
var res = db.Procedures.sp_Exp_SomeInputAndOutput<
string,
MyProcResult>(
Name: "G4g4r1n",
out_Result: new DynamicSchemaColumn { Size = 256 },
ret_Return: 0);
Nested Procedure Names
Dynamic member chaining builds qualified names:
var res = db.Procedures.dbo.reporting.MyProc();
This resolves to dbo.reporting.MyProc.
Result Mapping
If generic return types are provided, DynamORM attempts mapper-based projection into the target type.
If output parameters are present, result payload is assembled from:
- main scalar/resultset-derived value
- output values
- optional return value
The behavior is implemented in DynamORM/DynamicProcedureInvoker.cs and documented in XML examples in DynamORM/DynamicDatabase.cs.