アーカイブ

‘dotnet’ タグのついている投稿

ブラウザ風Windows Formアプリ開発

2009 年 5 月 16 日 コメントはありません

 DotNet でアプリケーションを開発する場合、画面遷移の主なパターンは二つあります。MDIフォームかDialogフォームです。業務内容によって、MDIと Dialogフォームが適当でない場合があります。ここでは、ウェブ ブラウザの画面遷移とよく似ている「Windows Form のブラウザ」アプリケーションの開発を紹介します
 

  • 画面構成

画面はメイン画面と詳細画面から成ります。※1

画面遷移時、メイン画面が常にロードされています。業務によって、詳細画面が変わります。アプリ稼動中に、メイン画面のインスタンスは一つだけあります。

※1:画面の一部だけ変わる場合、詳細画面上の任意のところで、埋め込まれるサブ画面も表示できますが、今回は割愛します。

ブラウザ風画面構成

続きをよむ »

カテゴリー: programming タグ: , ,

DotNet 2.0 と SqlServer 2005 による分散トランザクション処理

2009 年 5 月 16 日 コメントはありません
  • トランザクションの定義

トランザクションとは、データベース テーブルの中の任意のレコードを変更することを指します。レコードの挿入、更新、または削除はトランザクションと呼ばれます。一方、読み出しのためにレ コードを選択する操作は、データベース内に何の変化も生じさせないので、トランザクションではありません。

ビジネス ルールによっては、複数の変更のグループを 1 つのトランザクションとして扱うことが必要となります。例えば、会計ソフトウェアでは、借方と貸方への入力はともに成功するか失敗するかのどちらかでなく てはなりません。借方への入力が成功して貸方への入力が失敗すると、残高がおかしくなります。

この種の、残高を意識しなくてはならない変更は、全体として 1 つのトランザクションを表しています。トランザクションの中でエラーが発生した場合には、トランザクション全体をロールバックしなくてはなりません。
 

  • 分散トランザクションの定義

分散トランザクションには複数のデータベースが関与します。例えば、本部データベースと支店データベース両方のテーブルを一つのトランザクションで 更新し た場合、このトランザクションが分散トランザクションになります。また、分散トランザクションと違う、普通のトランザクションはローカル トランザクションとも呼ばれます。

複数のローカル トランザクションを纏めて一括コミットまたはロールバックする処理もありますが、これは分散トランザクションと違います。複数のコミットまたはロールバックの間、エラーが発生しデータの整合性が取れない可能性がありますから。

  続きをよむ »