0

netdatacontractserializer と SerializationBinder を使用して、クライアント側で nhibernate プロキシ用の独自のランタイム タイプを作成しています。

これはすべて機能しますが、ドメイン モデルには名前ごとに 1 つの型しかないと仮定せざるを得ません。つまり、名前空間を無視せざるを得ません。その理由は、SerializationBinder が「MyObjectProxyb04bae2d04d34e8a98b1d93bf24428cc」および「DynamicProxyGenAssembly2、Version=0.0.0.0、Culture=neutral、PublicKeyToken=null」へのアクセスのみを許可して、親タイプを派生させるためです。

ご覧のとおり、親型の名前空間を指すデータはありません。

生成されたプロキシの名前を (名前空間のプレフィックスを含めるために) 変更することを検討しましたが、それはハードコーディングされているようです。

4

1 に答える 1

2

プロキシを INHibernateProxy にキャストして、永続的な基になるクラスを取得できます。

((INHibernateProxy)proxy).HibernateLazyInitializer.PersistentClass
于 2009-02-25T00:58:51.090 に答える