問題タブ [unity-interception]
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.
unity-container - Unityコンテナー:すべてのメソッド呼び出しの周りに子コンテナーを作成します
Unityインターセプト/拡張/カスタムプロキシを使用してこれを実行できますか?
現在、上記のコードはWCFの動作として実装されています。これで、WCF呼び出しを行うのではなく、このサービスレイヤーに直接アクセスするクラスができ、この動作が必要になります。興味深いのは、ユニティインターセプト内に子コンテナを作成する必要があることです。
c# - Unity インターセプト: イベントを持つインターフェースのインターフェース インターセプト
ユニティ インターセプトを使用して例外をインターセプトしようとしています。インターフェイスと、そのインターフェイスを実装するクラスを定義しました。
InterfaceInterception を使用しようとしていますが、Unity は型がインターセプトできないという例外をスローしています。クラスを確認しましたが、正常にインターセプトされた他のクラスとの唯一の違いは、このクラスとインターフェイスが何らかのイベントを宣言していることです。VirtualMethodInterception を使用すると、Unity は例外をスローしません。
私はc#を使用しています
VirtualMethodInterceptor が機能するのはなぜですか? InterfaceInterceptor が機能しないのはなぜですか?
以下は、実際のコードを簡略化したものです。
ユニティ構成は
例外の詳細は次のとおりです。
例外: ArgumentException - ClassToBeInterceptable 型はインターセプト可能ではありません。パラメータ名:interceptedType
編集 :-
このクラスは別のクラスの依存関係として指定されており、「別の」クラス (正確には「別の」クラスのインターフェース) に依存する別のクラスの構築中に上記の例外がスローされます。
c# - SharpSNMP の実装 snmptrad の例に基づく動作停止
Sharp-SNMP Library (snmptrapd) に含まれる例に基づいてアプリケーションのプロトタイプを作成して、SNMP プロトコルからデータを取得しましたが、まったく動作しなくなりました。何らかの理由で動作を停止しましたが、例外をスローせずにコンパイルし、うまく実行します。
問題は、イベントが発生しないことにあります。
依存関係:
- Microsoft の Unity コンテナ
- SharpSNMP ライブラリ
- SourceGrid (Windows.Forms)
2日前までは魅力的に機能していましたが、今ではアイデアが不足していることに注意する必要がありました。(そして、コード内で根本的なものを変更していませんでした)。
C# コード
App.Config
c# - vb.netのユニティインターセプト自動構成
私の仕事ではそれしか許可されていないので、vb.netで傍受を機能させようとしています。この If.something 構文を持つラムダに遭遇したことはありません。
これは vb.net でどのように表示されますか? 将来これをググる必要がある場合に備えて、この構文は何と呼ばれますか?
c#-to-vb.net - VB.NET で Unity AutoConfig を使用して傍受を構成する
私の仕事ではそれしか許可されていないので、vb.netで傍受を機能させようとしています。私がそれを使用する方法は、実行されるすべてのビジネスロジック関数がインターセプトされてデータベースに記録されるように、いくつかのロガーを構成することです (悪い考えですが、単なる例です)。これは私が見つけた例です:
これは私が vb.net で動作させようとしたものですが、エラーが発生し続けます。
エラーは次のとおりです。
ここで明らかに何らかの型を指定する必要がありますが、要点は自動登録する必要があるということです。では、なぜ型を指定する必要があるのでしょうか? また、C# コードはそれを必要とせず、コード サンプルも必要としません (以下を参照)。
c# - UnityICallHandlerとIInterceptionBehavior
UnityはAoP機能を実現するために2つの異なるルートを提供しているようです。
問題はなぜですか?違いは何ですか?各アプローチの長所と短所は何でしょうか?
たとえば、ICallHandlerを使用します。
ただし、ICallHandlerの代わりにIInterceptionBehaviorを使用して、同様の機能を実現することもできます。
インターセプトを設定できるが、コールハンドラーを使用するハイブリッドもどこかにあります。
では、どちらを使用しますか?単一のフレームワークに一見冗長なソリューションがあるのはなぜですか?
c# - ユニティ + インターセプト + フェイク = ビッグ ボール オブ ファイア
Unity を新しい Fakes フレームワーク (以前の pex & mol) で快適に動作させるのに問題があります。
Unity インターセプト ライブラリの偽物を作成しようとすると、デバッグ時に単体テストが正常に実行されましたが、
InvalidProgramException - 共通言語ランタイムが無効なプログラムを検出しました。
問題はなぜですか?デバッグとリリースで動作が異なるのはなぜですか? 単体テストはデバッグ時に合格しますが、代わりに実行することを選択すると上記の例外で中断します。
unity-container - Microsoft Unity 基本クラスのインターセプト
基本クラスとそこから派生したクラスを持つアプリケーションがあり、各実装クラスには独自のインターフェイスがあります。基本クラスの派生型の例外処理に Unity のインターセプトを使用したいと考えています。
私はインターセプトが初めてなので、すべての癖を知りません。私の知る限り、各実装解決でインターセプトを登録する必要があります。ポイントは、すべての実装に基本クラスがあることです。そのため、冗長性をスキップして、各実装クラスで起動する基本クラスのみにインターセプトを設定できると考えました。
これは私の設定です:
これはうまくいきますが、このようなものが欲しいですTestUnityContainer
基本サービスから継承するさらに多くのサービス クラスを用意しますが、これらはすべて同じインターセプト動作を行うため、時間を大幅に節約できると考えました。
これは Unity で可能で、どのように可能ですか? モデルに多少の修正が必要な場合は、軽微なものである限り、喜んで対応します。
dependency-injection - Unity インターセプトと循環参照を使用したクラス
私のリッチ ドメイン モデルには循環参照がありますが、これは意図的なものです。
また、より詳細な制御のために独自の ORM を作成しており、プロパティに加えられた変更を検出するために、Unity を使用してセッターへの呼び出しをインターセプトし、プロパティ変更通知をトリガーしています (EF の動作と同様)。
問題は、ポリシー インターセプトが同じオブジェクトを何度も繰り返しているため、スタック オーバーフローが発生していることです。参照カウントを行う方法はありますか?
コンストラクターが循環的に依存していないことは既に確認済みですが、同じオブジェクトの繰り返しの再帰を停止するには、ポリシー インジェクションが必要です。
c# - 注文後にメソッド呼び出しをトレースするにはどうすればよいですか?
順番に従ってメソッド呼び出しをトレースしたいと思います。ロギングはプロダクションに適用されるため、コードをあまり変更したくありません。
これまでのところ、メソッド呼び出しのトレースに Unity のインターセプターを適用したいと考えていましたが、ほぼ完了しました。ただし、ログの出力は期待したものではありません。必要なのは次のとおりです。
以下のpeusedoコードから:
トレース ログの形式は次のとおりです。
メソッド呼び出し 1 に入る / メソッド呼び出し 2 に入る
メソッド呼び出し 2 からの離脱 / メソッド呼び出し 1 からの離脱
ところで、私のアプリケーションは .Net フレームワーク バージョン 4 で実行されています。
以下のようなプログラム:
私のコードで申し訳ありません。かなり長いです。