2

ObjectDataSource と新しい DomainDataSource ( http://blogs.microsoft.co.il/blogs/bursteg/archive/2009/04/11/using-domaindatasource-in-asp-net.aspx )の違いがわかりません。4 つのメソッドを作成する必要があり、それが両方のケースで使用されます。

主な違いは何ですか?

4

1 に答える 1

0

私が認識していることの 1 つは、ObjectDataSource が「追跡された」データ オブジェクトに対してうまく機能しないことです。たとえば、データ オブジェクトが Linq to SQL オブジェクトの場合、データ オブジェクトをデータベースに "更新" する前に、Linq to SQL DataContext を追跡する必要があります。ObjectDataSource は、 Activator.CreateInstanceに依存して、保存を試みる直前にデータ オブジェクトを構築します。

私が参加していた古い VS2005 プロジェクトでは、NHibernate をバックエンド (同様にデータ オブジェクトのインスタンス化を担当する必要があります) として使用しており、aspx ページでこの NHibernateDataSourceのバージョンを使用することになりました。

DomainDataSource は、すべての種類の DataContext を利用したドメイン モデル オブジェクト (POCO とは呼びません ;))、Linq to SQL、Linq to Entities、Astoria、RIA サービスなどに対して使用できるようにすることを意図しているようです。

于 2009-11-05T11:29:29.347 に答える