はじめに
「ObjectService」とは、Visual Studio(VB.NET/C#)とSQL Server 2005の接続に使用可能なO/Rマッピングツールです。前回はObjectServiceの継承設定を紹介しました。今回はObjectServiceを利用してデータのバージョン管理(履歴管理)を行う方法について紹介します。
これまでの記事
対象読者
- VB.NETを使用する方
- SQL Server 2005を使用する方
- O/Rマッピングに興味がある方
必要な環境
項目 | 環境 |
OS | Windows XP/Vista |
データベース | SQL Server 2005 |
.NET Framework | .NET Framework 2.0/3.0 |
Visual Studio | Visual Studio 2005 |
事前準備
試用版のObjectServiceは、コデックスのWebサイトから入手可能です。
有償のコンポーネントですが、ダウンロードファイルに含まれている「setup.exe」を実行し、[ライセンス版をインストールする]のチェックを外すことで、試用版をインストールできます。制限事項などの詳細については、ダウンロードファイルに同梱されているマニュアルを参照ください。
環境設定などは過去の記事を参照してください。
オブジェクトのバージョン管理とは
ObjectServiceのバージョン管理機能は、過去のある時点の情報を取得したい場合に有効です。データベース上ですべての変更履歴を保持することで、過去のある特定時点でのオブジェクトの状態を再現することができます。オブジェクトを追加/変更/削除したユーザー名を記録することも可能です。
それでは、具体的な手順を紹介します。まず初めに以下のクラスを準備します。
- クラス名
- プロパティ1
- プロパティ2
StockList
クラスは商品の在庫を管理するクラスで、プロパティ「Name
」には商品名、プロパティ「Value
」には在庫数が保存されると考えてください。
次に、バージョン管理を行うために、RootDiagramの[VersionControl]プロパティをTrueに設定します。
StockList
の[ベースクラス]プロパティに「Version.VersionObjectBase」を設定します。
画面表示はリアルタイムに更新されませんので、画面をリフレッシュしてください。リフレッシュすると4つの継承プロパティ(CreatedTimeStamp
/DeletedTimeStamp
/CreatedOperator
/DeletedOperator
)が自動追加されることを確認できます。
各プロパティは以下の情報を保持します。
プロパティ名 | 保持する情報 |
CreatedTimeStamp | オブジェクトが新規作成された日時を保持。 |
DeletedTimeStamp | オブジェクトが削除された日時を保持。 |
CreatedOperator | オブジェクトを新規作成したユーザー名を保持。 |
DeletedOperator | オブジェクトを更新したユーザー名を保持。 |
以上で、バージョン管理の準備が整いました。
次に、「ObjectService1.obs」の[サービスモデル]プロパティで「SQLServer」を選択し、[DB接続]プロパティから、データベース接続を設定します。データベース接続の設定方法は過去記事を参照してください。