static async Task <StoredProcedureExecutionResult <int> > runSqlProcedure() { try { using (var connection = new SqlConnection(connectionString)) { /* * var parameters = new * { * Name = "state10", * Value = 80, * DataTypeId = 1, * }; */ var parameters = new StoredProcedureParameters(new { Name = "state10", Value = 80, DataTypeId = 1, }); await connection.OpenAsync(); var output = await connection .QueryAsync( "[dbo].[InsertIntoEnumValue]", param : parameters, commandType : CommandType.StoredProcedure); /* * int result = (int)output.AsList().FirstOrDefault().NewEnumId; */ var result = (new StoredProcedureExecutionResultBuilder()) .retrieveOutputParameters(parameters) .build(() => (int)output.AsList().FirstOrDefault().NewEnumId); return(result); } } catch (Exception ex) { throw ex; } }
public StoredProcedureExecutionResultBuilder retrieveOutputParameters(StoredProcedureParameters parameters) { errorCode = parameters.getErrorCode(); errorMessage = parameters.getErrorMessage(); return(this); }