1

最近、他のオブジェクトのプロパティをプログラムで反映するプロキシオブジェクトを作成する方法を探しています。ただし、このような方法に関する情報を見つけることができませんでした。EntityFrameworkでLINQ操作を実行すると、同じプロパティを持つプロキシオブジェクトが返され、それらが表すタイプに直接キャストできることに気付いたので、可能であると思います。 。

基本的に私はこれと同じ機能を探しています、そして誰かがそれがどのように機能するかを説明できれば私は素晴らしいでしょう。

擬似コード:

object proxy = GetDynamicProxy(typeof(ProxyType));

ProxyTypeだから基本的に私はそれを表すオブジェクトを取得する方法とそれを取得するようなメソッドを探していGetDynamicProxyます。

ありがとう、アレックス。

4

2 に答える 2

2

EFでは、プロキシはエンティティタイプから動的に派生し、コードを動的に実装することによって生成されます。動的にコンパイルされたアセンブリ、タイプ、ラムダを調べる必要があります。System.Reflection.Emitはあなたの友達です(???)。ここに役立つはずのリンクがありますhttp://msdn.microsoft.com/en-us/library/3y322t50

于 2012-06-06T04:28:43.203 に答える
0

objectcontextでProxyCreationEnabledがtrueに設定されている場合、

yourContext.CreateObject<YourType>()

タイプの動的プロキシバージョンが作成され、データを入力できます。

http://msdn.microsoft.com/en-us/library/dd456853.aspx

于 2012-06-06T05:11:22.663 に答える