|
xt;
315 if (null != argument_Parameters)
316 {
317 _Command.Parameters.AddRange(argument_Parameters);
318 }
319
320 try
321 {
322 _CommandResult = await _Command.ExecuteNonQueryAsync();
323 _Transaction.Commit();
324 }
325 catch (Exception)
326 {
327 _Transaction.Rollback();
328 }
329
330 OperationValue _Value = new OperationValue();
331 _Value.Value = _CommandResult;
332
333 return _Value;
334 }
335
336 public async Task TransactionSaveAsync(string argument_SqlText, DbParameter[] argument_Parameters)
337 {
338 this.Connection.Open();
339 int _CommandResult = 0;
340 DbCommand _Command = this.Connection.DatabaseProvide.Factory.CreateCommand();
341 _Command.Connection = this.Connection.Connection;
342 DbTransaction _Transaction = this.Connection.Connection.BeginTransaction();
343 _Command.Transaction = _Transaction;
344 _Command.CommandText = argument_SqlText;
345 _Command.CommandType = CommandType.Text;
346 if (null != argument_Parameters)
347 {
348 _Command.Parameters.AddRange(argument_Parameters);
349 }
350
351 try
352 {
353 _CommandResult = await _Command.ExecuteNonQueryAsync();
354 _Transaction.Commit();
355 }
356 catch (Exception)
357 {
358 _Transaction.Rollback();
359 }
360
361 OperationValue _Value = new OperationValue();
362 _Value.Value = _CommandResult;
363 return _Value;
364 }
365 }
?
?
?
1 public sealed class DatabaseCommandProcedureAsync : IDatabaseCommandProcedureAsyncProvide
2 {
3 public DatabaseCommandProcedureAsync(DatabaseConnection argument_Connection)
4 {
5 this.Connection = argument_Connection;
6 }
7
8 public string CommandName { get; set; }
9
10 public DatabaseConnection Connection { get; private set; }
11
12 public async Task ExecuteNonQuery(string argument_ProcedureName, DbParameter[] argument_Parameters)
13 {
14 this.Connection.Open();
15 int _CommandResult = 0;
16 DbCommand _Command = this.Connection.DatabaseProvide.Factory.CreateCommand();
17 _Command.Connection = this.Connection.Connection;
18 _Command.CommandText = argument_ProcedureName;
19 _Command.CommandType = CommandType.StoredProcedure;
20 if (null != argument_Parameters)
21 {
22 _Command.Parameters.AddRange(argument_Parameters);
23 }
24
25 try
26 {
27 _CommandResult = await _Command.ExecuteNonQueryAsync();
28 }
29 catch (Exception)
30 {
31
32 }
33
34 OperationValue _Value = new OperationValue();
35 _Value.Value = _CommandResult;
36 return _Value;
37 }
38
39 public DbParameter NewParameter()
40 {
41 return this.Connection.DatabaseProvide.Factory.CreateParameter();
42 }
43
44 public DbParameter NewParameter(string argument_ParameterName, object argument_Value, DbType argument_DbType, ParameterDirection Direction)
45 {
46 DbParameter _Parameter = this.Connection.DatabaseProvide.Factory.CreateParameter();
47 _Parameter.ParameterName = argument_ParameterName;
48 _Parameter.Value = argument_Value;
49 _Parameter.DbType = argument_DbType;
50 _Parameter.Direction = Direction;
51 return _Parameter;
52 }
53
54 public async Task Query(string argument_ProcedureName, DbParameter[] argument_Parameters)
55 {
56 this.Connection.Open();
57 DataTable _QueryTable = new DataTable();
58 DbComma |