Support main procedure result via ProcedureResultAttribute
This commit is contained in:
@@ -46,6 +46,21 @@ namespace DynamORM.Tests.Helpers
|
||||
public int Status { get; set; }
|
||||
}
|
||||
|
||||
public class ProcedureParameterAttributeMainResult
|
||||
{
|
||||
[ProcedureResult]
|
||||
public int MainResult { get; set; }
|
||||
|
||||
[DynamORM.Mapper.Column("status")]
|
||||
public int Status { get; set; }
|
||||
}
|
||||
|
||||
public class ProcedureParameterAttributeMainResultField
|
||||
{
|
||||
[ProcedureResult(-1)]
|
||||
public int MainResult;
|
||||
}
|
||||
|
||||
public class ProcedureMultiResult : IProcedureResultReader
|
||||
{
|
||||
[DynamORM.Mapper.Column("sp_Multi")]
|
||||
|
||||
@@ -143,6 +143,36 @@ namespace DynamORM.Tests.Procedure
|
||||
Assert.AreEqual(3, result.Status);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestDeclaredResultPayloadBindingSupportsProcedureResultMainResultProperty()
|
||||
{
|
||||
var result = DynamicProcedureResultBinder.BindPayload(
|
||||
typeof(ProcedureParameterAttributeMainResult),
|
||||
"sp_Test",
|
||||
27,
|
||||
new System.Collections.Generic.Dictionary<string, object>
|
||||
{
|
||||
{ "status", 6 }
|
||||
}) as ProcedureParameterAttributeMainResult;
|
||||
|
||||
Assert.NotNull(result);
|
||||
Assert.AreEqual(27, result.MainResult);
|
||||
Assert.AreEqual(6, result.Status);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestDeclaredResultPayloadBindingSupportsProcedureResultMainResultField()
|
||||
{
|
||||
var result = DynamicProcedureResultBinder.BindPayload(
|
||||
typeof(ProcedureParameterAttributeMainResultField),
|
||||
"sp_Test",
|
||||
33,
|
||||
null) as ProcedureParameterAttributeMainResultField;
|
||||
|
||||
Assert.NotNull(result);
|
||||
Assert.AreEqual(33, result.MainResult);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestDeclaredResultReaderCanConsumeMultipleResultSets()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user