掲示板お問い合わせランダムジャンプ



この広告は30日以上更新がないブログに表示されております。 新しい記事を書くことで広告を消すことができます。

Top Index

2010年07月19日
ダーティチェックフレームワーク 公開
ダーティチェックを行うことができるフレームワーク TemporaryStrage を作成しましたので、公開します。



・使用言語 VB2010(.NET4)

・開発環境 Visual Studio 2010 Professional

・利用方法
ダーティチェックを行うインスタンスを予めStrageインスタンスにRegistしおきます。
その後、StrageクラスのIsDtiryメソッド(戻り値Boolean)にて、変更(追加or更新or削除)がされているかどうかをチェックできます。
変更をされている箇所を詳細に知りたい場合は、StrageクラスのCreateDirtyDefinitionメソッドを使用して、ダーティ定義クラスを生成してください。

・ダーティチェックが管理対象型
管理対象はObject型のみです。

・ダーティチェックの判断対象型
値型とString 型のプロパティ、またはDataColumnクラスです。

・Objectコンテナのダーティチェックについて
IListインターフェイス実装クラス、DataTableクラスの場合、Objectのコンテナとして、ダーティチェック管理対象にすることは可能です。
コンテナ内にあるアイテムをダーティチェックすることは可能ですが、コンテナ自身をダーティチェックすることはできません。
また、コンテナが追加されたかどうかを検知することもできません。
StrageインスタンスにRegistしていないインスタンスをダーティチェックすると、管理対象となっていないため、新規ダーティであると判別されます。
しかし、StrageインスタンスにRegistしていないList型のインスタンスをダーティチェックすると、エラーになります。これは、List型自身をダーティチェック対象としていないためです。
上述のようなことがやりたい場合は、StrageインスタンスにList型のインスタンスをRegistしておき、そのList型のインスタンスに新規のアイテムを追加して、List型のインスタンスをダーティチェックにかけてください。新規アイテムが新規ダーティであると判断されます。
このあたりはソースコードに添付してある単体テストコードを参照されることをお勧めします。


以下、余談

続きを読む ...
 
[ 投稿者:mk3008 at 15:55 | フリーウェア | コメント(2) | トラックバック(0) ]