public async Task <ActionResult> SelectAll_DSQL(CrudViweModel model) { if (ModelState.IsValid) { // 引数クラスを生成。下位(B・D層)は、テスト クラスを流用する TestParameterValue testParameterValue = new TestParameterValue(this.ControllerName, "-", this.ActionName, model.DdlDap + "%" + model.DdlMode1 + "%" + model.DdlMode2 + "%" + model.DdlExRollback, this.UserInfo); // 動的SQLの要素を設定 testParameterValue.OrderColumn = model.DdlOrderColumn; testParameterValue.OrderSequence = model.DdlOrderSequence; // B層呼出し+都度コミット LayerB layerB = new LayerB(); TestReturnValue testReturnValue = (TestReturnValue)await layerB.DoBusinessLogicAsync(testParameterValue, this.SelectIsolationLevel(model.DdlIso)); // 結果表示するメッセージ string message = ""; if (testReturnValue.ErrorFlag == true) { // 結果(業務続行可能なエラー) message = "ErrorMessageID:" + testReturnValue.ErrorMessageID + ";"; message += "ErrorMessage:" + testReturnValue.ErrorMessage + ";"; message += "ErrorInfo:" + testReturnValue.ErrorInfo; // Ajax.BeginFormでは、UpdateTargetIdで指定した // ターゲット以外を更新する場合、JavaScriptでの対応が必要。 // #ここではjQueryを使用している。 string scriptText = "$('#lblMessage').text('" + message + "');"; return(JavaScript(scriptText)); } else { // 結果(正常系) model.shippers = new DsNorthwind.ShippersDataTable(); DataTable dt = (DataTable)testReturnValue.Obj; foreach (DataRow row in dt.Rows) { DsNorthwind.ShippersRow srow = model.shippers.NewShippersRow(); srow.ShipperID = int.Parse(row[0].ToString()); srow.CompanyName = row[1].ToString(); srow.Phone = row[2].ToString(); model.shippers.Rows.Add(srow); } } } // Ajax.BeginFormでは、以下のように記述することで部分更新が可能。 return(PartialView("_ChartView", model)); }
public async Task <ActionResult> SelectAll_DSQL(CrudViweModel model) { if (ModelState.IsValid) { // 引数クラスを生成。下位(B・D層)は、テスト クラスを流用する TestParameterValue testParameterValue = new TestParameterValue(this.ControllerName, "-", this.ActionName, model.DdlDap + "%" + model.DdlMode1 + "%" + model.DdlMode2 + "%" + model.DdlExRollback, this.UserInfo); // 動的SQLの要素を設定 testParameterValue.OrderColumn = model.DdlOrderColumn; testParameterValue.OrderSequence = model.DdlOrderSequence; // B層呼出し+都度コミット LayerB layerB = new LayerB(); TestReturnValue testReturnValue = (TestReturnValue)await layerB.DoBusinessLogicAsync(testParameterValue, this.SelectIsolationLevel(model.DdlIso)); // 結果表示するメッセージ string message = ""; if (testReturnValue.ErrorFlag == true) { // 結果(業務続行可能なエラー) message = "ErrorMessageID:" + testReturnValue.ErrorMessageID + ";"; message += "ErrorMessage:" + testReturnValue.ErrorMessage + ";"; message += "ErrorInfo:" + testReturnValue.ErrorInfo; // メッセージを設定。 model.Message = message; } else { // 結果(正常系) model.shippers = new DsNorthwind.ShippersDataTable(); DataTable dt = (DataTable)testReturnValue.Obj; foreach (DataRow row in dt.Rows) { DsNorthwind.ShippersRow srow = model.shippers.NewShippersRow(); srow.ShipperID = int.Parse(row[0].ToString()); srow.CompanyName = row[1].ToString(); srow.Phone = row[2].ToString(); model.shippers.Rows.Add(srow); } } } // 再表示(Html.BeginFormでは、全体更新。 return(View("Index", model)); }
public async Task <ActionResult> Select(CrudViweModel model) { string scriptText = ""; if (ModelState.IsValid) { // 引数クラスを生成。下位(B・D層)は、テスト クラスを流用する TestParameterValue testParameterValue = new TestParameterValue(this.ControllerName, "-", this.ActionName, model.DdlDap + "%" + model.DdlMode1 + "%" + model.DdlMode2 + "%" + model.DdlExRollback, this.UserInfo); // 動的SQLの要素を設定 testParameterValue.Shipper = model.Shipper; // B層呼出し+都度コミット LayerB layerB = new LayerB(); TestReturnValue testReturnValue = (TestReturnValue)await layerB.DoBusinessLogicAsync( testParameterValue, this.SelectIsolationLevel(model.DdlIso)); // 結果表示するメッセージ string message = ""; if (testReturnValue.ErrorFlag == true) { // 結果(業務続行可能なエラー) message = "ErrorMessageID:" + testReturnValue.ErrorMessageID + ";"; message += "ErrorMessage:" + testReturnValue.ErrorMessage + ";"; message += "ErrorInfo:" + testReturnValue.ErrorInfo; // メッセージを設定。 model.Message = message; // Ajax.BeginFormでは、以下のように記述することで部分更新が可能。 return(PartialView("_MessageView", model)); } else { // 結果(正常系) } // Ajax.BeginFormでは、UpdateTargetIdで指定した // ターゲット以外を更新する場合、JavaScriptでの対応が必要。 // #ここではjQueryを使用している。 ShipperViweModel svm = (ShipperViweModel)testReturnValue.Obj; scriptText = string.Format( "$('#Shipper_ShipperID').val('{0}');$('#Shipper_CompanyName').val('{1}');$('#Shipper_Phone').val('{2}');", svm.ShipperID, svm.CompanyName, svm.Phone); } return(JavaScript(scriptText)); }
public async Task <ActionResult> Select(CrudViweModel model) { if (ModelState.IsValid) { // 引数クラスを生成。下位(B・D層)は、テスト クラスを流用する TestParameterValue testParameterValue = new TestParameterValue(this.ControllerName, "-", this.ActionName, model.DdlDap + "%" + model.DdlMode1 + "%" + model.DdlMode2 + "%" + model.DdlExRollback, this.UserInfo); // 動的SQLの要素を設定 testParameterValue.ShipperID = int.Parse(model.ShipperID); // B層呼出し+都度コミット LayerB layerB = new LayerB(); TestReturnValue testReturnValue = (TestReturnValue)await layerB.DoBusinessLogicAsync(testParameterValue, this.SelectIsolationLevel(model.DdlIso)); // 結果表示するメッセージ string message = ""; if (testReturnValue.ErrorFlag == true) { // 結果(業務続行可能なエラー) message = "ErrorMessageID:" + testReturnValue.ErrorMessageID + ";"; message += "ErrorMessage:" + testReturnValue.ErrorMessage + ";"; message += "ErrorInfo:" + testReturnValue.ErrorInfo; // メッセージを設定。 model.Message = message; } else { // 結果(正常系) ModelState.Clear(); // ErrorのClearをしないと何故か設定できない。 model.ShipperID = testReturnValue.ShipperID.ToString(); model.CompanyName = testReturnValue.CompanyName; model.Phone = testReturnValue.Phone; } } // 再表示(Html.BeginFormでは、全体更新。 return(View("Index", model)); }
public async Task <IActionResult> SelectAll_DSQL(CrudViweModel model) { if (ModelState.IsValid) { // 引数クラスを生成。下位(B・D層)は、テスト クラスを流用する TestParameterValue testParameterValue = new TestParameterValue(this.ControllerName, "-", this.ActionName, model.DdlDap + "%" + model.DdlMode1 + "%" + model.DdlMode2 + "%" + model.DdlExRollback, this.UserInfo); // 動的SQLの要素を設定 testParameterValue.OrderColumn = model.DdlOrderColumn; testParameterValue.OrderSequence = model.DdlOrderSequence; // B層呼出し+都度コミット LayerB layerB = new LayerB(); TestReturnValue testReturnValue = (TestReturnValue)await layerB.DoBusinessLogicAsync( testParameterValue, this.SelectIsolationLevel(model.DdlIso)); // 結果表示するメッセージ string message = ""; if (testReturnValue.ErrorFlag == true) { // 結果(業務続行可能なエラー) message = "ErrorMessageID:" + testReturnValue.ErrorMessageID + ";"; message += "ErrorMessage:" + testReturnValue.ErrorMessage + ";"; message += "ErrorInfo:" + testReturnValue.ErrorInfo; // メッセージを設定。 model.Message = message; } else { // 結果(正常系) model.Shippers = (List <ShipperViweModel>)testReturnValue.Obj; } } // 再表示(Html.BeginFormでは、全体更新。 return(View("Index", model)); }
public async Task <ActionResult> Update(CrudViweModel model) { if (ModelState.IsValid) { // 引数クラスを生成。下位(B・D層)は、テスト クラスを流用する TestParameterValue testParameterValue = new TestParameterValue(this.ControllerName, "-", this.ActionName, model.DdlDap + "%" + model.DdlMode1 + "%" + model.DdlMode2 + "%" + model.DdlExRollback, this.UserInfo); // 動的SQLの要素を設定 testParameterValue.ShipperID = int.Parse(model.ShipperID); testParameterValue.CompanyName = model.CompanyName; testParameterValue.Phone = model.Phone; // B層呼出し+都度コミット LayerB layerB = new LayerB(); TestReturnValue testReturnValue = (TestReturnValue)await layerB.DoBusinessLogicAsync(testParameterValue, this.SelectIsolationLevel(model.DdlIso)); // 結果表示するメッセージ string message = ""; if (testReturnValue.ErrorFlag == true) { // 結果(業務続行可能なエラー) message = "ErrorMessageID:" + testReturnValue.ErrorMessageID + ";"; message += "ErrorMessage:" + testReturnValue.ErrorMessage + ";"; message += "ErrorInfo:" + testReturnValue.ErrorInfo; } else { // 結果(正常系) message = testReturnValue.Obj.ToString() + "件更新"; } // メッセージを設定。 model.Message = message; } // Ajax.BeginFormでは、以下のように記述することで部分更新が可能。 return(PartialView("_MessageView", model)); }
public async Task <ActionResult> SelectAll_DS(CrudViweModel model) { if (ModelState.IsValid) { // 引数クラスを生成。下位(B・D層)は、テスト クラスを流用する TestParameterValue testParameterValue = new TestParameterValue(this.ControllerName, "-", this.ActionName, model.DdlDap + "%" + model.DdlMode1 + "%" + model.DdlMode2 + "%" + model.DdlExRollback, this.UserInfo); // B層呼出し+都度コミット LayerB layerB = new LayerB(); TestReturnValue testReturnValue = (TestReturnValue)await layerB.DoBusinessLogicAsync( testParameterValue, this.SelectIsolationLevel(model.DdlIso)); // 結果表示するメッセージ string message = ""; if (testReturnValue.ErrorFlag == true) { // 結果(業務続行可能なエラー) message = "ErrorMessageID:" + testReturnValue.ErrorMessageID + ";"; message += "ErrorMessage:" + testReturnValue.ErrorMessage + ";"; message += "ErrorInfo:" + testReturnValue.ErrorInfo; // Ajax.BeginFormでは、UpdateTargetIdで指定した // ターゲット以外を更新する場合、JavaScriptでの対応が必要。 // #ここではjQueryを使用している。 string scriptText = "$('#lblMessage').text('" + message + "');"; return(JavaScript(scriptText)); } else { // 結果(正常系) model.Shippers = (List <ShipperViweModel>)testReturnValue.Obj; } } // Ajax.BeginFormでは、以下のように記述することで部分更新が可能。 return(PartialView("_ChartView", model)); }
public async Task <ActionResult> SelectCount(CrudViweModel model) { if (ModelState.IsValid) { // 引数クラスを生成。下位(B・D層)は、テスト クラスを流用する TestParameterValue testParameterValue = new TestParameterValue(this.ControllerName, "-", this.ActionName, model.DdlDap + "%" + model.DdlMode1 + "%" + model.DdlMode2 + "%" + model.DdlExRollback, this.UserInfo); // B層呼出し+都度コミット LayerB layerB = new LayerB(); TestReturnValue testReturnValue = (TestReturnValue)await layerB.DoBusinessLogicAsync(testParameterValue, this.SelectIsolationLevel(model.DdlIso)); // 結果表示するメッセージ string message = ""; if (testReturnValue.ErrorFlag == true) { // 結果(業務続行可能なエラー) message = "ErrorMessageID:" + testReturnValue.ErrorMessageID + ";"; message += "ErrorMessage:" + testReturnValue.ErrorMessage + ";"; message += "ErrorInfo:" + testReturnValue.ErrorInfo; } else { // 結果(正常系) message = testReturnValue.Obj.ToString() + "件のデータがあります"; } // メッセージを設定。 model.Message = message; } // 再表示(Html.BeginFormでは、全体更新。 return(View("Index", model)); }
public async Task <IActionResult> Select(CrudViweModel model) { if (ModelState.IsValid) { // 引数クラスを生成。下位(B・D層)は、テスト クラスを流用する TestParameterValue testParameterValue = new TestParameterValue(this.ControllerName, "-", this.ActionName, model.DdlDap + "%" + model.DdlMode1 + "%" + model.DdlMode2 + "%" + model.DdlExRollback, this.UserInfo); // 動的SQLの要素を設定 testParameterValue.Shipper = model.Shipper; // B層呼出し+都度コミット LayerB layerB = new LayerB(); TestReturnValue testReturnValue = (TestReturnValue)await layerB.DoBusinessLogicAsync( testParameterValue, this.SelectIsolationLevel(model.DdlIso)); // 結果表示するメッセージ string message = ""; if (testReturnValue.ErrorFlag == true) { // 結果(業務続行可能なエラー) message = "ErrorMessageID:" + testReturnValue.ErrorMessageID + ";"; message += "ErrorMessage:" + testReturnValue.ErrorMessage + ";"; message += "ErrorInfo:" + testReturnValue.ErrorInfo; // メッセージを設定。 model.Message = message; } else { // 結果(正常系) ModelState.Clear(); // ErrorのClearをしないと何故か設定できない。 #region PocoToPocoのテストコード ShipperViweModel svm = null; TestShipperViweModel tsvm = null; // テスト1 svm = (ShipperViweModel)BinarySerialize.DeepClone(model.Shipper); if (testReturnValue.Obj2 != null) { PocoToPoco.Map <TestShipperViweModel, ShipperViweModel>( (TestShipperViweModel)testReturnValue.Obj2, svm, // mapの書き方は、Key-Valueでdst-srcのproperty field名を書く new Dictionary <string, string>() { { "ShipperID", "_ShipperID" }, { "CompanyName", "_CompanyName" }, { "Phone", "_Phone" } }); Debug.WriteLine("svm:" + ObjectInspector.Inspect(svm)); } // テスト2 tsvm = PocoToPoco.Map <ShipperViweModel, TestShipperViweModel>( (ShipperViweModel)testReturnValue.Obj, null, // mapの書き方は、Key-Valueでdst-srcのproperty field名を書く new Dictionary <string, string>() { { "_ShipperID", "ShipperID" }, { "_CompanyName", "CompanyName" }, { "_Phone", "Phone" } }); Debug.WriteLine("tsvm:" + ObjectInspector.Inspect(tsvm)); #endregion model.Shipper = (ShipperViweModel)testReturnValue.Obj; } } // 再表示(Html.BeginFormでは、全体更新。 return(View("Index", model)); }