ドメインオブジェクトを表すインターフェースがあるとしましょう:
public interface IFoo
{
Bar Bar { get; }
}
Bar
型はオブジェクトのファミリーであり、それぞれがわずかに異なるスキーマを持っています。データベースでは、これは XML として表されます (これはモバイル アプリであるため、単純nvarchar
に であり、真の XML 列ではありません)。
および対応するオブジェクトDataSet
を含む生成済みがあります。FooDataTable
FooRow
// AcmeDataSet.designer.cs
public partial class FooRow : DataRow
{
public string BarXml
{
// Generated get and set
}
}
IFoo
の逆シリアル化されたインスタンスを実装してキャッシュしたいと思いますBar
:
// FooRow.cs
public partial class FooRow : IFoo
{
private Bar _bar;
Bar IFoo.Bar
{
get { return _bar; }
}
}
部分クラス内から、 の値BarXml
が変更されたことをどのように判断できますか?
FooDataTable
イベントが含まれColumnChanging
ていることColumnChanged
はわかっていますが、それらをサブスクライブする方法がわかりません。Linq to Sql のOnCreated
部分メソッドに類似するものはなく、生成されたコンストラクターにフックする別の方法を知りません。