本文整理汇总了C#中Touryo.Infrastructure.Framework.Common.BaseParameterValue类的典型用法代码示例。如果您正苦于以下问题:C# BaseParameterValue类的具体用法?C# BaseParameterValue怎么用?C# BaseParameterValue使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
BaseParameterValue类属于Touryo.Infrastructure.Framework.Common命名空间,在下文中一共展示了BaseParameterValue类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。
示例1: UOC_Insert
/// <summary>業務処理を実装</summary>
/// <param name="parameterValue">引数クラス</param>
private void UOC_Insert(BaseParameterValue parameterValue)
{
// 引数クラスをアップキャスト
TestParameterValue testParameter = (TestParameterValue)parameterValue;
// 戻り値クラスを生成
TestReturnValue testReturn = new TestReturnValue();
// ↓業務処理-----------------------------------------------------
// データアクセス クラスを生成する
DaoCategories daoCategories = new DaoCategories(this.GetDam());
// 1件挿入
//daoCategories.PK_CategoryID = testParameter.field1;
daoCategories.CategoryName = testParameter.field2;
daoCategories.Description = testParameter.field3;
//daoCategories.Picture = testParameter.field4;
// インサート
testReturn.obj = daoCategories.D1_Insert();
// ↑業務処理-----------------------------------------------------
// 戻り値クラスをダウンキャストして戻す
this.ReturnValue = (BaseReturnValue)testReturn;
}
开发者ID:krt,项目名称:OpenTouryo,代码行数:29,代码来源:LayerB_Dynamic.cs
示例2: UOC_Insert
/// <summary>業務処理を実装</summary>
/// <param name="parameterValue">引数クラス</param>
private void UOC_Insert(BaseParameterValue parameterValue)
{
// 引数クラスをアップキャスト
TestParameterValue testParameter = (TestParameterValue)parameterValue;
// 戻り値クラスを生成
TestReturnValue testReturn = new TestReturnValue();
// ↓業務処理-----------------------------------------------------
// データアクセス クラスを生成する
DaoSuppliers daoSuppliers = new DaoSuppliers(this.GetDam());
// 1件挿入
//daoSuppliers.PK_SupplierID = testParameter.field1;
daoSuppliers.CompanyName = testParameter.field2;
daoSuppliers.ContactName = testParameter.field3;
daoSuppliers.ContactTitle = testParameter.field4;
daoSuppliers.Address = testParameter.field5;
daoSuppliers.City = testParameter.field6;
daoSuppliers.Region = testParameter.field7;
daoSuppliers.PostalCode = testParameter.field8;
daoSuppliers.Country = testParameter.field9;
daoSuppliers.Phone = testParameter.field10;
daoSuppliers.Fax = testParameter.field11;
daoSuppliers.HomePage = testParameter.field12;
testReturn.obj = daoSuppliers.S1_Insert();
// ↑業務処理-----------------------------------------------------
// 戻り値クラスをダウンキャストして戻す
this.ReturnValue = (BaseReturnValue)testReturn;
}
开发者ID:krt,项目名称:OpenTouryo,代码行数:36,代码来源:LayerB_Static.cs
示例3: UOC_Select
/// <summary>業務処理を実装</summary>
/// <param name="parameterValue">引数クラス</param>
private void UOC_Select(BaseParameterValue parameterValue)
{
// 引数クラスをアップキャスト
TestParameterValue testParameter = (TestParameterValue)parameterValue;
// 戻り値クラスを生成
TestReturnValue testReturn = new TestReturnValue();
// ↓業務処理-----------------------------------------------------
// データアクセス クラスを生成する
DaoCategories daoCategories = new DaoCategories(this.GetDam());
// n件参照
if (testParameter.field1_ForSearch.ToString().Trim() == "") { }
else
{ daoCategories.PK_CategoryID = testParameter.field1_ForSearch; }
if (testParameter.field2_ForSearch.ToString().Trim() == "") { }
else
{ daoCategories.CategoryName = testParameter.field2_ForSearch; }
DataTable dt = new DataTable();
daoCategories.D2_Select(dt);
testReturn.dt = dt;
// ↑業務処理-----------------------------------------------------
// 戻り値クラスをダウンキャストして戻す
this.ReturnValue = (BaseReturnValue)testReturn;
}
开发者ID:krt,项目名称:OpenTouryo,代码行数:34,代码来源:LayerB_Dynamic.cs
示例4: UOC_Select
/// <summary>業務処理を実装</summary>
/// <param name="parameterValue">引数クラス</param>
private void UOC_Select(BaseParameterValue parameterValue)
{
// 引数クラスをアップキャスト
TestParameterValue testParameter = (TestParameterValue)parameterValue;
// 戻り値クラスを生成
TestReturnValue testReturn = new TestReturnValue();
// ↓業務処理-----------------------------------------------------
// データアクセス クラスを生成する
DaoSuppliers daoSuppliers = new DaoSuppliers(this.GetDam());
// 1件参照
daoSuppliers.PK_SupplierID = testParameter.field1;
DataTable dt = new DataTable();
daoSuppliers.S2_Select(dt);
testReturn.field1 = dt.Rows[0][0];
testReturn.field2 = dt.Rows[0][1];
testReturn.field3 = dt.Rows[0][2];
testReturn.field4 = dt.Rows[0][3];
testReturn.field5 = dt.Rows[0][4];
testReturn.field6 = dt.Rows[0][5];
testReturn.field7 = dt.Rows[0][6];
testReturn.field8 = dt.Rows[0][7];
testReturn.field9 = dt.Rows[0][8];
testReturn.field10 = dt.Rows[0][9];
testReturn.field11 = dt.Rows[0][10];
testReturn.field12 = dt.Rows[0][11];
// ↑業務処理-----------------------------------------------------
// 戻り値クラスをダウンキャストして戻す
this.ReturnValue = (BaseReturnValue)testReturn;
}
开发者ID:krt,项目名称:OpenTouryo,代码行数:39,代码来源:LayerB_Static.cs
示例5: UOC_Delete
/// <summary>業務処理を実装</summary>
/// <param name="parameterValue">引数クラス</param>
private void UOC_Delete(BaseParameterValue parameterValue)
{
// 引数クラスをアップキャスト
TestParameterValue testParameter = (TestParameterValue)parameterValue;
// 戻り値クラスを生成
TestReturnValue testReturn = new TestReturnValue();
// ↓業務処理-----------------------------------------------------
// データアクセス クラスを生成する
DaoSuppliers daoSuppliers = new DaoSuppliers(this.GetDam());
// 1件削除
daoSuppliers.PK_SupplierID = testParameter.field1;
testReturn.obj = daoSuppliers.S4_Delete();
// ↑業務処理-----------------------------------------------------
// 戻り値クラスをダウンキャストして戻す
this.ReturnValue = (BaseReturnValue)testReturn;
}
开发者ID:krt,项目名称:OpenTouryo,代码行数:25,代码来源:LayerB_Static.cs
示例6: UOC_ABEND
/// <summary>
/// B層の一般的な例外による異常終了の後処理を実装するUOCメソッド。
/// </summary>
/// <param name="parameterValue">引数クラス</param>
/// <param name="returnValue">戻り値クラス</param>
/// <param name="ex">Exception</param>
/// <remarks>業務コード親クラス1から利用される派生の末端</remarks>
protected override void UOC_ABEND(BaseParameterValue parameterValue, ref BaseReturnValue returnValue, Exception ex)
{
// 一般的な例外発生時の処理を実装
// TODO:
// nullチェック
if (this.perfRec == null)
{
// なにもしない
// リスロー
throw ex;
}
else
{
// 性能測定終了
this.perfRec.EndsPerformanceRecord();
// キャスト
MyParameterValue myPV = (MyParameterValue)parameterValue;
// システム例外に振り替える用のワーク
bool sysErrorFlag = false;
string sysErrorMessageID = "";
string sysErrorMessage = "";
#region 例外の振替処理のIF文
if (ex.Message == "Other-Business")
{
// 業務例外へ変換
returnValue.ErrorFlag = true;
returnValue.ErrorMessageID = "振替後";
returnValue.ErrorMessage = "振替後";
returnValue.ErrorInfo = "振り替える場合は、基本的にここを利用。";
}
else if (ex.Message == "Other-System")
{
// システム例外へ振替
sysErrorFlag = true;
sysErrorMessageID = "振替後";
sysErrorMessage = "振替後";
}
#endregion
#region ACCESSログ出力、リスローする・しない
if (returnValue.ErrorFlag)
{
// 業務例外へ変換
// ------------
// メッセージ部
// ------------
// ユーザ名, IPアドレス, レイヤ,
// 画面名, コントロール名, メソッド名, 処理名
// 処理時間(実行時間), 処理時間(CPU時間)
// エラーメッセージID, エラーメッセージ等
// ------------
string strLogMessage =
"," + myPV.User.UserName +
"," + myPV.User.IPAddress +
"," + "<<-----" +
"," + myPV.ScreenId +
"," + myPV.ControlId +
"," + myPV.MethodName +
"," + myPV.ActionType +
"," + this.perfRec.ExecTime +
"," + this.perfRec.CpuTime +
"," + returnValue.ErrorMessageID +
"," + returnValue.ErrorMessage;
// Log4Netへログ出力
LogIF.WarnLog("ACCESS", strLogMessage);
}
else if (sysErrorFlag)
{
// システム例外へ振替
// ------------
// メッセージ部
// ------------
// ユーザ名, IPアドレス, レイヤ,
// 画面名, コントロール名, メソッド名, 処理名
// 処理時間(実行時間), 処理時間(CPU時間)
// エラーメッセージID, エラーメッセージ等
// ------------
string strLogMessage =
"," + myPV.User.UserName +
"," + myPV.User.IPAddress +
"," + "<<-----" +
"," + myPV.ScreenId +
//.........这里部分代码省略.........
开发者ID:krt,项目名称:OpenTouryo,代码行数:101,代码来源:MyFcBaseLogic.cs
示例7: UOC_AfterTransaction
/// <summary>
/// B層のトランザクションのコミット後の終了処理を実装
/// </summary>
/// <param name="parameterValue">引数クラス</param>
/// <param name="returnValue">戻り値クラス</param>
/// <remarks>業務コード親クラス1から利用される派生の末端</remarks>
protected override void UOC_AfterTransaction(BaseParameterValue parameterValue, BaseReturnValue returnValue)
{
// TODO:
}
开发者ID:krt,项目名称:OpenTouryo,代码行数:10,代码来源:MyFcBaseLogic.cs
示例8: UOC_PreAction
/// <summary>
/// B層の開始処理を実装
/// </summary>
/// <param name="parameterValue">引数クラス</param>
/// <remarks>業務コード親クラス1から利用される派生の末端</remarks>
protected override void UOC_PreAction(BaseParameterValue parameterValue)
{
// ACCESSログ出力-----------------------------------------------
MyParameterValue myPV = (MyParameterValue)parameterValue;
// ------------
// メッセージ部
// ------------
// ユーザ名, IPアドレス, レイヤ,
// 画面名, コントロール名, メソッド名, 処理名
// ------------
string strLogMessage =
"," + myPV.User.UserName +
"," + myPV.User.IPAddress +
"," + "----->>" +
"," + myPV.ScreenId +
"," + myPV.ControlId +
"," + myPV.MethodName +
"," + myPV.ActionType;
// Log4Netへログ出力
LogIF.InfoLog("ACCESS", strLogMessage);
// -------------------------------------------------------------
// 性能測定開始
this.perfRec = new PerformanceRecorder();
this.perfRec.StartsPerformanceRecord();
}
开发者ID:krt,项目名称:OpenTouryo,代码行数:36,代码来源:MyFcBaseLogic.cs
示例9: CmnDao
/// <summary>業務処理を実装</summary>
/// <param name="parameterValue">引数クラス</param>
private void UOC_メソッド名(BaseParameterValue parameterValue)
{
// 戻り値クラスを生成して、事前に戻り地に設定しておく。
_3TierReturnValue testReturn = new _3TierReturnValue();
this.ReturnValue = testReturn;
// ↓業務処理-----------------------------------------------------
// 共通Dao
CmnDao cmnDao = new CmnDao(this.GetDam());
cmnDao.ExecSelectScalar();
// ↑業務処理-----------------------------------------------------
}
开发者ID:krt,项目名称:OpenTouryo,代码行数:16,代码来源:_3TierEngine.cs
示例10: UOC_DoAction
/// <summary>
/// 業務処理を実装
/// </summary>
/// <param name="parameterValue">引数クラス</param>
/// <param name="returnValue">戻り値クラス</param>
protected override void UOC_DoAction(BaseParameterValue parameterValue, ref BaseReturnValue returnValue)
{
// 引数クラスをアップキャスト
TestParameterValue testParameter = (TestParameterValue)parameterValue;
// 戻り値クラスを生成
TestReturnValue testReturn = new TestReturnValue();
// 戻り値クラスをダウンキャストして戻す
returnValue = (BaseReturnValue)testReturn;
// ---
// トランザクション パターンIDの領域
string[] transactionPatternIDs;
// トランザクション グループIDからトランザクション パターンIDを取得
BaseLogic.GetTransactionPatterns(
(string)testParameter.Obj, out transactionPatternIDs);
// トランザクション パターンIDを設定
testReturn.Obj = transactionPatternIDs;
#region Damを初期化
// トランザクション グループIDから取得した、
// トランザクション パターンIDでDam初期化する。
foreach (string transactionPatternID in transactionPatternIDs)
{
BaseDam tempDam = null;
if (transactionPatternID.IndexOf("SQL") != -1)
{
// DamSqlSvrを初期化してセット
tempDam = new DamSqlSvr();
BaseLogic.InitDam(transactionPatternID, tempDam);
this.SetDam(transactionPatternID, tempDam);
}
else if (transactionPatternID.IndexOf("ODP") != -1)
{
// DamOraOdpを初期化してセット
tempDam = new DamOraOdp();
BaseLogic.InitDam(transactionPatternID, tempDam);
this.SetDam(transactionPatternID, tempDam);
}
else if (transactionPatternID.IndexOf("DB2") != -1)
{
// DamDB2を初期化してセット
tempDam = new DamDB2();
BaseLogic.InitDam(transactionPatternID, tempDam);
this.SetDam(transactionPatternID, tempDam);
}
else if (transactionPatternID.IndexOf("MCN") != -1)
{
// DamMySQLを初期化してセット
tempDam = new DamMySQL();
BaseLogic.InitDam(transactionPatternID, tempDam);
this.SetDam(transactionPatternID, tempDam);
}
}
#endregion
#region 終了時の状態選択
#region Damの状態選択
if ((parameterValue.ActionType.Split('%'))[2] == "UT")
{
// トランザクションあり
}
else if ((parameterValue.ActionType.Split('%'))[2] == "NT")
{
// トランザクションなし
// → まえもってロールバックしておく
// ロールバック
foreach (string transactionPatternID in transactionPatternIDs)
{
this.GetDam(transactionPatternID).RollbackTransaction();
}
}
else if ((parameterValue.ActionType.Split('%'))[2] == "NC")
{
// コネクションなし
// → まえもってロールバック、コネクションクローズしておく
//
// ※ トランザクションを開始して
// コミットしないで閉じると、ロールバック扱い。
// ロールバック
foreach (string transactionPatternID in transactionPatternIDs)
{
this.GetDam(transactionPatternID).RollbackTransaction();
}
//.........这里部分代码省略.........
开发者ID:krt,项目名称:OpenTouryo,代码行数:101,代码来源:TestMTC_txg.cs
示例11: DoBusinessLogic
/// <summary>
/// 業務コード呼び出しメソッド(業務ロジックの入り口)
/// </summary>
/// <param name="parameterValue">引数クラス</param>
/// <param name="iso">分離レベル(DBMS毎の分離レベルの違いを理解して設定すること)</param>
/// <returns>戻り値クラス</returns>
/// <remarks>画面コード クラスから利用する。</remarks>
public BaseReturnValue DoBusinessLogic(
BaseParameterValue parameterValue, DbEnum.IsolationLevelEnum iso)
{
// 戻り値クラス
BaseReturnValue returnValue = null;
// オリジナルのスタックトレース値のクリア
this.OriginalStackTrace = "";
// ★データアクセス制御クラス(DAM)の生成し、コネクションを確立、
// トランザクションを開始する処理(業務フレームワークに、UOCで実装する)
// this._dam = this.UOC_ConnectionOpen(parameterValue, iso);
this.UOC_ConnectionOpen(parameterValue, iso);
try
{
// 自動振り分け対応
this.WasCalledFromDoBusinessLogic = true;
// ★前処理(業務フレームワークに、UOCで実装する)
this.UOC_PreAction(parameterValue);
// ★業務ロジックの実行(業務処理の派生クラスに、UOCで実装する)
this.UOC_DoAction(parameterValue, ref returnValue);
// ★後処理(業務フレームワークに、UOCで実装する)
this.UOC_AfterAction(parameterValue, returnValue);
#region トランザクションをコミット
// 2009/03/13---B層内:トランザクション手動制御を可能に(ここから)
if (this._dam == null)
{
// nullの場合はコミットしない(何もしない)。
}
else
{
// nullでない場合はコミットする。
this._dam.CommitTransaction();
}
// 2009/03/13---B層内:トランザクション手動制御を可能に(ここまで)
// 2009/03/28---データアクセス制御クラスを配列化(ここから)
foreach (string key in this._dams.Keys)
{
// ここはforeachで取るので「キーなし」にならない
if (this._dams[key] == null)
{
// nullの場合はコミットしない(何もしない)。
}
else
{
// nullでない場合はコミットする。
((BaseDam)this._dams[key]).CommitTransaction();
}
}
// 2009/03/28---データアクセス制御クラスを配列化(ここまで)
#endregion
// ★トランザクション完了後の後処理(業務フレームワークに、UOCで実装する)
this.UOC_AfterTransaction(parameterValue, returnValue);
}
catch (BusinessApplicationException baEx)// 業務例外
{
#region トランザクションをロールバック
// 2009/03/13---B層内:トランザクション手動制御を可能に(ここから)
if (this._dam == null)
{
// nullの場合はロールバックしない(何もしない)。
}
else
{
// nullでない場合はロールバックする。
this._dam.RollbackTransaction();
}
// 2009/03/13---B層内:トランザクション手動制御を可能に(ここまで)
// 2009/03/28---データアクセス制御クラスを配列化(ここから)
foreach (string key in this._dams.Keys)
{
// ここはforeachで取るので「キーなし」にならない
if (this._dams[key] == null)
{
// nullの場合はロールバックしない(何もしない)。
//.........这里部分代码省略.........
开发者ID:takeman,项目名称:OpenTouryo,代码行数:101,代码来源:BaseLogic.cs
示例12: UOC_BatUpd
/// <summary>業務処理を実装</summary>
/// <param name="parameterValue">引数クラス</param>
private void UOC_BatUpd(BaseParameterValue parameterValue)
{
// 引数クラスをアップキャスト
TestParameterValue testParameter = (TestParameterValue)parameterValue;
// 戻り値クラスを生成
TestReturnValue testReturn = new TestReturnValue();
// ↓業務処理-----------------------------------------------------
// データアクセス クラスを生成する
DaoProducts daoProducts = new DaoProducts(this.GetDam());
// ROW毎に処理
foreach (DataRow dr in testParameter.dt.Rows)
{
// パラメタをクリアする。
daoProducts.ClearParametersFromHt();
switch (dr.RowState)
{
case DataRowState.Added:
#region 1件挿入
// 設定(インサート値)
daoProducts.PK_ProductID = dr["ProductID"].ToString();
daoProducts.ProductName = dr["ProductName"].ToString();
daoProducts.SupplierID = dr["SupplierID"].ToString();
daoProducts.CategoryID = dr["CategoryID"].ToString();
daoProducts.QuantityPerUnit = dr["QuantityPerUnit"].ToString();
daoProducts.UnitPrice = dr["UnitPrice"].ToString();
daoProducts.UnitsInStock = dr["UnitsInStock"].ToString();
daoProducts.UnitsOnOrder = dr["UnitsOnOrder"].ToString();
daoProducts.ReorderLevel = dr["ReorderLevel"].ToString();
daoProducts.Discontinued = dr["Discontinued"].ToString();
// インサート(S1でよい)
testReturn.obj = daoProducts.S1_Insert();
#endregion
break;
case DataRowState.Deleted:
#region 1件削除
// 設定(主キー)
daoProducts.PK_ProductID = dr["ProductID", DataRowVersion.Original].ToString();
// ★ 楽観排他をする場合は、ここにタイムスタンプを追加する。
// デリート(タイムスタンプを指定する場合は、D4_Delete)
testReturn.obj = daoProducts.D4_Delete();
#endregion
break;
case DataRowState.Modified:
#region 1件更新
// 設定(主キー)
daoProducts.PK_ProductID = dr["ProductID"].ToString();
// ★ 楽観排他をする場合は、ここにタイムスタンプを追加する。
// ↓は、DataRowVersion.Originalを使用した楽観排他の例
daoProducts.ProductName = dr["ProductName", DataRowVersion.Original].ToString();
daoProducts.SupplierID = dr["SupplierID", DataRowVersion.Original].ToString();
daoProducts.CategoryID = dr["CategoryID", DataRowVersion.Original].ToString();
daoProducts.QuantityPerUnit = dr["QuantityPerUnit", DataRowVersion.Original].ToString();
daoProducts.UnitPrice = dr["UnitPrice", DataRowVersion.Original].ToString();
daoProducts.UnitsInStock = dr["UnitsInStock", DataRowVersion.Original].ToString();
daoProducts.UnitsOnOrder = dr["UnitsOnOrder", DataRowVersion.Original].ToString();
daoProducts.ReorderLevel = dr["ReorderLevel", DataRowVersion.Original].ToString();
daoProducts.Discontinued = dr["Discontinued", DataRowVersion.Original].ToString();
// 更新値設定
daoProducts.Set_ProductName_forUPD = dr["ProductName"].ToString();
daoProducts.Set_SupplierID_forUPD = dr["SupplierID"].ToString();
daoProducts.Set_CategoryID_forUPD = dr["CategoryID"].ToString();
daoProducts.Set_QuantityPerUnit_forUPD = dr["QuantityPerUnit"].ToString();
daoProducts.Set_UnitPrice_forUPD = dr["UnitPrice"].ToString();
daoProducts.Set_UnitsInStock_forUPD = dr["UnitsInStock"].ToString();
daoProducts.Set_UnitsOnOrder_forUPD = dr["UnitsOnOrder"].ToString();
daoProducts.Set_ReorderLevel_forUPD = dr["ReorderLevel"].ToString();
daoProducts.Set_Discontinued_forUPD = dr["Discontinued"].ToString();
// アップデート(タイムスタンプを指定する場合は、D3_Update)
testReturn.obj = daoProducts.D3_Update();
#endregion
break;
default:
break;
//.........这里部分代码省略.........
开发者ID:krt,项目名称:OpenTouryo,代码行数:101,代码来源:LayerB_BatUpd.cs
示例13: DoBusinessLogic
/// <summary>
/// 業務コード呼び出しメソッド(業務ロジックの入り口)
/// </summary>
/// <param name="parameterValue">引数クラス</param>
/// <param name="iso">分離レベル(DBMS毎の分離レベルの違いを理解して設定すること)</param>
/// <returns>戻り値クラス</returns>
/// <remarks>
/// クライアント側(2層C/S)用
/// 画面コード クラスから利用する。
/// </remarks>
public BaseReturnValue DoBusinessLogic(
BaseParameterValue parameterValue, DbEnum.IsolationLevelEnum iso)
{
// 戻り値クラス
BaseReturnValue returnValue = null;
// オリジナルのスタックトレース値のクリア
this.OriginalStackTrace = "";
// データアクセス制御クラス(DAM)がグローバルなので、全てロックする。
lock (BaseLogic2CS._lock)
{
if (BaseLogic2CS._dam == null)
{
// データアクセス制御クラス(DAM)が無い場合
// ★データアクセス制御クラス(DAM)の生成し、コネクションを確立、
// トランザクションを開始する処理(業務フレームワークに、UOCで実装する)
this.UOC_ConnectionOpen(parameterValue, iso);
}
else
{
// データアクセス制御クラス(DAM)が有る場合
}
try
{
// 自動振り分け対応
this.WasCalledFromDoBusinessLogic = true;
// ★前処理(業務フレームワークに、UOCで実装する)
this.UOC_PreAction(parameterValue);
// ★業務ロジックの実行(業務処理の派生クラスに、UOCで実装する)
this.UOC_DoAction(parameterValue, ref returnValue);
// ★後処理(業務フレームワークに、UOCで実装する)
this.UOC_AfterAction(parameterValue, returnValue);
//// トランザクション終了
//BaseLogic2CS._dam.CommitTransaction();
//// ★トランザクション完了後の後処理(業務フレームワークに、UOCで実装する)
//this.UOC_AfterTransaction(parameterValue, returnValue);
}
catch (BusinessApplicationException baEx)// 業務例外
{
// ★★業務例外時のロールバックは自動にしない。
// 業務例外の場合、エラーフラグをセットする。
// 戻り値がnullの場合は、生成する。
if (returnValue == null)
{
returnValue = new BaseReturnValue();
}
returnValue.ErrorFlag = true;
// メッセージを戻す(戻り値クラスに設定)。
returnValue.ErrorMessageID = baEx.messageID;
returnValue.ErrorMessage = baEx.Message;
returnValue.ErrorInfo = baEx.Information;
// ★異常系の後処理(業務フレームワークに、UOCで実装する)
this.UOC_ABEND(parameterValue, returnValue, baEx);
// 正常系の戻り値にして戻すため、リスローしない。
}
catch (BusinessSystemException bsEx)// システム例外
{
// ★システム例外時は、自動的にロールバック。
// 2009/03/13---B層内:トランザクション手動制御を可能に(ここから)
// トランザクションをロールバック
if (BaseLogic2CS._dam == null)
{
// nullの場合はロールバックしない(何もしない)。
}
else
{
// 例外対策(例外は潰さない)
try
{
// nullでない場合はロールバックする。
BaseLogic2CS._dam.RollbackTransaction();
// コネクション クローズ
BaseLogic2CS._dam.ConnectionClose();
}
//.........这里部分代码省略.........
开发者ID:runceel,项目名称:OpenTouryo,代码行数:101,代码来源:BaseLogic2CS.cs
示例14: UOC_DoAction
/// <summary>業務処理を実装</summary>
/// <param name="parameterValue">引数クラス</param>
/// <param name="returnValue">戻り値クラス</param>
protected override void UOC_DoAction(BaseParameterValue parameterValue, ref BaseReturnValue returnValue)
{
// 戻り値を生成しておく。
returnValue = new MyReturnValue();
// 自動トランザクションで開始したトランザクションを閉じる。
this.GetDam().CommitTransaction();
// コネクションを閉じる。
this.GetDam().ConnectionClose();
// データアクセス制御クラスをクリア。
this.SetDam(null);
// Dam用ワーク
BaseDam damWork;
// 共通Dao
CmnDao cmnDao;
// SQLの戻り値を受ける
object obj;
#region SQL Server
#region SQL_NT
// Damを生成
damWork = new DamSqlSvr();
// Damを初期化
BaseLogic.InitDam("SQL_NT", damWork);
// Damを設定
this.SetDam("SQL_NT", damWork);
// インサート
// Damを直接使用することもできるが、
// 通常は、データアクセスにはDaoを使用する。
cmnDao = new CmnDao(this.GetDam("SQL_NT"));
cmnDao.SQLText = "INSERT INTO Shippers(CompanyName, Phone) VALUES('SQL_NT', 'SQL_NT')";
obj = (object)cmnDao.ExecSelectScalar();
//this.GetDam("SQL_NT").CommitTransaction();
//this.GetDam("SQL_NT").ConnectionClose();
#endregion
#region SQL_UC
// Damを生成
damWork = new DamSqlSvr();
// Damを初期化
BaseLogic.InitDam("SQL_UC", damWork);
// Damを設定
this.SetDam("SQL_UC", damWork);
// インサート
// Damを直接使用することもできるが、
// 通常は、データアクセスにはDaoを使用する。
cmnDao = new CmnDao(this.GetDam("SQL_UC"));
cmnDao.SQLText = "INSERT INTO Shippers(CompanyName, Phone) VALUES('SQL_UC', 'SQL_UC')";
obj = (object)cmnDao.ExecSelectScalar();
//this.GetDam("SQL_UC").CommitTransaction();
//this.GetDam("SQL_UC").ConnectionClose();
#endregion
#region SQL_RC
// Damを生成
damWork = new DamSqlSvr();
// Damを初期化
BaseLogic.InitDam("SQL_RC", damWork);
// Damを設定
this.SetDam("SQL_RC", damWork);
// インサート
// Damを直接使用することもできるが、
// 通常は、データアクセスにはDaoを使用する。
cmnDao = new CmnDao(this.GetDam("SQL_RC"));
cmnDao.SQLText = "INSERT INTO Shippers(CompanyName, Phone) VALUES('SQL_RC', 'SQL_RC')";
obj = (object)cmnDao.ExecSelectScalar();
//this.GetDam("SQL_RC").CommitTransaction();
//this.GetDam("SQL_RC").ConnectionClose();
#endregion
#region SQL_RR
// Damを生成
damWork = new DamSqlSvr();
// Damを初期化
BaseLogic.InitDam("SQL_RR", damWork);
// Damを設定
this.SetDam("SQL_RR", damWork);
//.........这里部分代码省略.........
开发者ID:krt,项目名称:OpenTouryo,代码行数:101,代码来源:TestMTC_mcn.cs
示例15: UOC_Delete
/// <summary>業務処理を実装</summary>
/// <param name="parameterValue">引数クラス</param>
private void UOC_Delete(BaseParameterValue parameterValue)
{
// 引数クラスをアップキャスト
TestParameterValue testParameter = (TestParameterValue)parameterValue;
// 戻り値クラスを生成
TestReturnValue testReturn = new TestReturnValue();
// ↓業務処理-----------------------------------------------------
// データアクセス クラスを生成する
DaoCategories daoCategories = new DaoCategories(this.GetDam());
// n件削除
// 検索条件設定
if (testParameter.field1_ForSearch.ToString().Trim() == "") { }
else
{ daoCategories.PK_CategoryID = testParameter.field1_ForSearch; }
if (testParameter.field2_ForSearch.ToString().Trim() == "") { }
else
{ daoCategories.CategoryName = testParameter.field2_ForSearch; }
// デリート
testReturn.obj = daoCategories.D4_Delete();
// ↑業務処理-----------------------------------------------------
// 戻り値クラスをダウンキャストして戻す
this.ReturnValue = (BaseReturnValue)testReturn;
}
开发者ID:krt,项目名称:OpenTouryo,代码行数:34,代码来源:LayerB_Dynamic.cs
示例16: UOC_SelectAll
/// <summary>業務処理を実装</summary>
/// <param name="parameterValue">引数クラス</param>
private void UOC_SelectAll(BaseParameterValue parameterValue)
{
// 引数クラスをアップキャスト
TestParameterValue testParameter = (TestParameterValue)parameterValue;
// 戻り値クラスを生成
TestReturnValue testReturn = new TestReturnValue();
// ↓業務処理-----------------------------------------------------
// データアクセス クラスを生成する
DaoCategories daoCategories = new DaoCategories(this.GetDam());
// 全件取得
// 実行
DataTable dt = new DataTable();
daoCategories.D2_Select(dt);
// 戻り値を戻す
testReturn.dt = dt;
// ↑業務処理-----------------------------------------------------
// 戻り値クラスをダウンキャストして戻す
this.ReturnValue = (BaseReturnValue)testReturn;
}
开发者ID:krt,项目名称:OpenTouryo,代码行数:29,代码来源:LayerB_Dynamic.cs
示例17: UOC_ConnectionOpen
// 2009/03/28---データアクセス制御クラスを配列化(ここまで)
#endregion
#region 業務コード親クラス2でオーバーライドするメソッド
/// <summary>
/// データアクセス制御クラス(DAM)の生成し、
/// コネクションを確立、トランザクションを開始する処理を実装
/// </summary>
/// <param name="parameterValue">引数クラス</param>
/// <param name="iso">分離レベル(DBMS毎の分離レベルの違いを
|
请发表评论