問題タブ [castle-dynamicproxy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wcf - Castle.Proxies.EntityProxy の Datacontact が失敗しました
Castle.Proxies.EntityProxy を WCF チャネル経由で送信するには?
プロキシを KnownType として設定するには?
c# - DynamicProxy を介して、型にプロパティを追加することは可能ですか?
Castle DynamicProxy を使用して、実行時に特定のタイプのプロキシを作成しています - いくつかの mixin を含みます。
プロキシに任意のプロパティを追加することも可能かどうかを把握しようとしています。
実行時に、次のような新しい型を作成します。
理論的には、これは可能であるように思われます.Castleでそれを行う方法がわからないだけかもしれません...何か考えはありますか? ありがとう!
c# - プロキシが仮想プロパティの属性を取得していませんか?
2.2を使用するDynamicProxy
と、この問題が発生していると思います。
「プロキシで使用できない仮想プロパティの継承可能な属性」
http://support.castleproject.org/projects/DYNPROXY/issues/view/DYNPROXY-ISSUE-109
仮想プロパティを持つ基本クラスがあります。プロパティはでマークされてい[XmlIgnore]
ます。派生クラスをシリアル化すると、プロパティはシリアル化されません。しかし、派生クラスのプロキシを作成すると、プロパティはシリアル化されます。この問題を示す簡単なコンソールアプリケーションを次に示します。
これはバグですか?または私は何か間違ったことをしていますか?簡単な回避策は、私のIsDirty
プロパティを仮想ではないようにすることです。これは、私が作業しているシナリオでは実際には許容できるかもしれませんが、仮想であることが望ましいです。
ありがとう。
Patrick Steele http://weblogs.asp.net/psteele
c# - DynamicProxyを元のタイプに「実際に」ダウンキャストする方法(WCFを介して送信するため)
OK、状況は、PatientDto
Castleによって生成されたクラスとDynamicProxyがあるということPatientDtoProxy
です。
このプロキシをSilverlightクライアントで使用していて、WCFサービス呼び出しを介してサーバーに送り返したいと考えています。
WCFサービスコントラクトはPatientDto
(プロキシではなく)を期待しており、他の何かを送信しようとすると、予想どおりに爆発します。
基本的に、動作させるためにそれをに「キャスト」する必要があるように感じPatientDto
ます...しかし実際には、参照をPatientDtoにキャストしても、何も変更されません-WCFはオブジェクトを認識しますとしてメモリにありPatientDtoProxy
、爆破します。
明らかに、新しいものにディープコピーを行うことPatientDto
はオプションです(そして機能します)が、不快なものです。考えていないテクニックはありますか?
c# - 管理された拡張性フレームワーク、インターセプト、および動的プロキシ
簡単な作業ですが、方向性を見つけることができませんでした。
MEF のオブジェクト作成をインターセプトし、オブジェクトの (キャッスル ダイナミック プロキシを使用して) プロキシを返し、次にオブジェクト自体を返します。それは可能ですか?
castle-dynamicproxy - 城の動的プロキシを使用してインターフェイスを集約するにはどうすればよいですか
コードベースで宣言型 mixin 管理を許可したいと考えています。次のようなインターフェイスを宣言したい
したがって、私のクラスは、必要なデータ アクセス レイヤーのビットのみを使用できます。私の IoC コンテナーでは、これらのインターフェイスの実装を 1 つのインスタンスに集約したいと考えています。ただし、参照されたスレッドと同様のことを行うと、ジェネレーターは、インターフェイスが複数の場所で実装されていることを示す例外をスローします。独自のインターセプターを実装して通過する以外に何ができますか?
関連するスレッド:
より良い例 (コードの壁)
スロー
c# - オブジェクトにインターフェースをコードで動的に実装させる
私はこのテストに合格したいのですが、誰かがそれを行う方法を知っていますか?
このようなことは、城の動的プロキシ、linfuなどで実行できると思います...しかし、どのように?
c# - Castle動的プロキシとWPFのINotifyPropertyChanged
Castle DPを使用してエンティティをプロキシでラップしています。エンティティは、INotifyPropertyChangedを単独で実装しています。setが呼び出されたときにイベントを発生させます。
プロキシを介してエンティティを操作し、それらがすべて合格したときにpropertychangedイベントが発生することを確認するために、ラッピングに関する単体テストを作成しました。
問題は、画面を使用する実際のアプリケーションにあります。実際にDPであるプロパティに画面をバインドすると、プロパティに登録する画面が別の方法で変更され、内部に登録管理を実装しない限り機能しません。インターセプターコード
なぜこれが動作なのですか、プロパティに登録するときに変更されたプロパティに対してwpfは何をしますか?
castle-windsor - Windsor / DynamicProxyのロギングの側面はありますか?クラス/メソッドの属性として配置できますか?
城のスタックで?
答えの後、私はこれを思いついた:
c# - DataContractJsonSerializer を使用して、DynamicProxy2 で生成されたオブジェクトの List<> をシリアル化できません
プロキシされたオブジェクトSystem.Runtime.Serialization.Json.DataContractJsonSerializer
をシリアライズするために使用する問題に直面しています。List<T>
プロキシされた単一のオブジェクトでは問題なく動作しますが、リストによって爆発します。このようなもの:
これを行うと、次の例外が発生します。
System.Runtime.Serialization.SerializationException : データ コントラクト名「SimpleViewModelProxy: http://schemas.datacontract.org/2004/07/ Castle.Proxies」で「Castle.Proxies.SimpleViewModelProxy」と入力することは想定されていません。DataContractResolver の使用を検討するか、既知の型のリストに静的に認識されていない型を追加します。たとえば、KnownTypeAttribute 属性を使用するか、DataContractSerializer に渡される既知の型のリストにそれらを追加します。
単一の「SimpleViewModelProxy」オブジェクトまたは のいずれかをシリアル化できますList<SimpleViewModel>
が、List<SimpleViewModelProxy>
. これを機能させた経験のある人はいますか?彼らは私が間違っていることについていくつかの指針を提供できますか?