Open棟梁 wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

Web

Open棟梁を適用したシステムに於けるオンライン処理の処理シーケンスについて説明します。

Webオンライン処理シーケンス

リッチクライアント

Open棟梁を適用したシステムに於けるWindows Formsの2層C/Sのオンライン処理の処理シーケンスについて説明します。

リッチクライアント・オンライン処理シーケンス

初期化イベント処理の詳細(Web)

ASP.NET Web Formsのイベント発生順

ASP.NET Web Formsのイベント発生順 - マイクロソフト系技術情報 Wiki

クラス構造と初期化イベント

処理内容

コンストラクタ

ベースクラス1の「コンストラクタ」では、
「Page.Loadイベント」のイベント ハンドラを登録する処理が実行される。

Page.Initイベント

実装無し。

Page.Loadイベント

ベースクラス1」の「Page.Loadイベント」では、順番に以下の処理が実行される。

  • 初期処理
    • マスタ ページ情報の初期化
    • Ajaxの状態を確認(ASP.NET Ajax、ClientCallback?
    • セッション スコープ ロック用オブジェクトを生成
    • Sessionタイムアウト検出機能
    • 各種HIDDENコントロールの取得
  • イベント処理用UOCメソッド」の呼出準備
    • FindControl?メソッドを使用して、コントロール オブジェクトを取得する。
    • 取得したコントロール オブジェクトのイベント プロパティに、
      「コントロール イベント毎の共通イベント ハンドラ」を設定する。
  • ベースクラス2」の「共通の初期処理UOCメソッド」を呼び出す。
    • WebForms?の共通の「初回のLoad処理」(UOC_CMNFormInit?
    • WebForms?の共通の「PostBack?のLoad処理」(UOC_CMNFormInit_PostBack?
  • ダイアログ表示機能
    • HIDDENフィールドとJavaScript?を使用して、ダイアログ表示する。
    • ベースクラス1」の「Page.Loadイベント」では、
      「子画面」を閉じた際のポストバックの場合、後処理を実行する。
  • 「Page.Loadイベント処理の最終処理用UOCメソッド」を呼び出す(UOC_Finally)。

コントロール イベント

「イベント・ハンドラ設定処理」により「コントロール イベント」が呼び出され、以下の処理が実行される。
※ 「Page.Loadイベント」の後、ASP.NETがポストバックのHTTPリクエストを評価し、コントロールのイベント発生を検出する。

  • コントロールのイベントが発生していた場合「ベースクラス1」の「コントロール イベント毎の共通イベント ハンドラ」が呼び出される。
  • 「コントロール イベント毎の共通イベント ハンドラ」では、次の処理が実行される。
  • 「イベント処理の開始処理用UOCメソッド」(UOC_PreAction?)を呼び出す。
    ユーザが実装した「イベント処理の開始処理」を実行する。
  • 「イベント処理用UOCメソッド」を呼び出す。
    • ユーザが実装した「イベント処理」を実行する。
    • UOC_(コントロール名)_(イベント名)メソッドというメソッド名
    • 「コントロール イベント毎の共通イベント ハンドラ」から
      レイト バインドで呼び出されるので、オーバーライドでは実装しない。
  • 「イベント処理の終了処理用UOCメソッド」を呼び出す(UOC_AfterAction?)。
    ユーザが実装した「イベント処理の終了処理」を実行する。
  • 「イベント処理後の画面遷移処理の実装用UOCメソッド」を呼び出す(UOC_Screen_Transition)。
    ユーザが実装した「イベント処理」が「パス」を戻した場合、その「パス」に対して「画面遷移する処理」を実行する。
  • 「コントロール イベント処理の最終処理用UOCメソッド」を呼び出す(UOC_Finally)。
    ユーザが実装した「イベント処理の最終処理」を実行する。

補足

  • 情報の引継ぎ方法
    画面遷移方式により、情報の引継ぎ方法が異なる。
    • Server.Transferの場合は、HTTP Contextを使用する。
    • Response.Redirectの場合は、Query Stringを使用する。
  • 子画面
    • ココでは、モーダル ダイアログ画面などを「子画面」と表現する。
    • なお「親画面」は、当該するモーダル ダイアログ画面を起動した、
      モードレス画面にあたる。情報の引継ぎには、Query Stringを使用する。

参考

処理シーケンスの詳細は利用ガイド(共通編)を参照のこと。

通信制御部品を使用した場合、P層 → B層間にサービス インターフェイス(サーバ エンドポイント)とサービス プロキシ(クライアント エンドポイント)が挿入される。


添付ファイル: fileOnlineSequence2.png 149件 [詳細] fileOnlineSequence.png 147件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-02-02 (金) 17:21:39 (109d)