|
分類:[.NET 全般]
2014/06/23(Mon) 16:32:03 編集(投稿者)
いつもお世話になっています。 メソッドの共通化についてどうしてもわからない点があるのですが、 もしお分かりの方がいらっしゃいましたら助けてください。
下記の2つのメソッドと共通化したメソッドがあるのですが、 クラスの基礎がまだつかめてなくて共通化メソッドのprivate AppControlDetail checkAppStatus()って、 アクセスレベルがprivateは理解できます。 次に、AppControlDetailクラス型??なんじゃそれ? checkAppStatus()??なんじゃそれ?です。
また、共通化したメソッドの中に、AppControlDetail comStatus = null;とあり、 インスタンス変数の省略化?と疑問があり、またまた、戻り値でreturn comStatus;を返しているのですが、 クラス型の変数AppControlDetail comStatus = null;は何のために使っているのでしょうか? また、クラス型の変数はどのような時に使うべきですか?
伝え下手な私で申し訳ありませんが、 下記にメソッドを記載いたしますのでご教授のほどよろしくお願いします。 ■1のメソッド public void CheckAppStatus() {
// ストアド実行 AppControlService.Instance.SrcBatchStatus = _Repository.GetAll<AppControlDetail>(_Repository.sniDB, "uspBBJGetAppBatchStatus"); this.EventAggregator = AppEnvironmentService.Instance.GlobeEventAggregator; foreach (var checkStatus in BBJ.Infrastructure.AppShell.ParameterModule.Service.AppControlService.Instance.SrcBatchStatus) { string message = "";
if (checkStatus.BatchStatus == "Y") { message = TranslationManager.Instance.Translate("MSG.COM90004").ToString(); } // アプリケーション環境を公開 AppEnv appEnv = new AppEnv(); appEnv.Title = AppEnvironmentService.Instance.AppFullName; appEnv.Version = AppEnvironmentService.Instance.AppMainVersion; // MSG:バッチ処理の実行中です。バッチ処理完了後に再度実施してください。 appEnv.BatchMessage = message; EventAggregator.GetEvent<AppEnvEvent>().Publish(appEnv); } }
■2のメソッド public void CheckBtnControl() { AppControlDetail comStatus = null; comStatus = checkAppStatus(); string showMessage = ""; if (comStatus != null) {
// MSG:バッチ処理の実行中です。バッチ処理完了後に再度実施してください。 showMessage = TranslationManager.Instance.Translate("MSG.COM90004").ToString();
//バッチ実行中のアプリケーションの制御用のメッセージボックスを表示する MessageBox.Show(showMessage, AppEnvironmentService.Instance.AppName, MessageBoxButton.OK, MessageBoxImage.Information); } }
■共通化メソッド private AppControlDetail checkAppStatus() { AppControlDetail comStatus = null;
// ストアド実行 AppControlService.Instance.SrcBatchStatus = _Repository.GetAll<AppControlDetail>(_Repository.sniDB, "uspBBJGetAppBatchStatus");
foreach (var checkStatus in BBJ.Infrastructure.AppShell.ParameterModule.Service.AppControlService.Instance.SrcBatchStatus) { if (checkStatus.BatchStatus == "Y") { comStatus = checkStatus; } } return comStatus;
}
■言語:C# 環境:WPF,Visual Studio2012 DB:SQL Server
|