设为首页 加入收藏

TOP

我与ADO.NET二三事(十一)
2015-11-21 02:04:02 来源: 作者: 【 】 浏览:11
Tags:我与 ADO.NET 二三
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
首页 上一页 8 9 10 11 12 13 14 下一页 尾页 11/14/14
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Database 'xxxx' is bein.. 下一篇磁盘空间&SQL日志&作业执行情况

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: