問題タブ [postsharp]
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.
c# - PostSharp 属性に引数を追加するにはどうすればよいですか?
簡単な PostSharp ログ属性があります。
メソッドの引数に関する情報をログ エントリに追加することで、この属性をより柔軟にしたいと考えていますが、必要な場合のみです。
IF を使用した疑似コードは、どうすればよいかわかりません。これを属性に渡すにはどうすればよいですか? 私はそれが次のようになることを期待していますが、属性コード内でそれを処理する方法を知りません:
c# - PostSharp 1.0 を使用する ClickOnce アプリケーションには、GAC で 1.5 アセンブリが必要なようです
PostSharp 1.0 がインストールされていたマシンに PostSharp 1.5 をインストールしました。現在、1.0SP1 アセンブリにリンクしている私のアプリケーションは、何らかの理由で 1.5 アセンブリがクライアント側の GACにあることを要求し始めました。これがなぜなのか誰か知っていますか?(PostSharp フォーラムで質問しましたが、返信がありませんでした。)
log4net - Postsharp と log4net と log4postsharp
コンパイル時にコードに log4net ステートメントを挿入するために postsharp を使用する優れたツールであるlog4postsharpサイトに出くわしました。
log4postsharp の現在のバージョンは、いくつかの制限がある Postsharp 1.0 を使用します。Postsharp 1.5 を使用する log4postsharp のコンパイル済みバージョンがどこかにあるかどうかは誰にもわかりませんか?
c# - Postsharp - 呼び出しアセンブリを取得しますか?
Postsharp OnMethodBoundaryAspect を使用する場合、特定のメソッドへの呼び出しを開始した呼び出しアセンブリを取得する方法はありますか? GetCallingAssembly は、呼び出されているメソッドが含まれているアセンブリを返すだけです。
注 - postsharp フォーラムで問題が発生しています。そうでなければ、そこに投稿したはずです。
c# - オブジェクト マッパーの PostSharp
エンティティから DTO および DTO からエンティティへのマッパーに PostSharp を使用することを検討しています。約 100 のエンティティに対してそのタスクを手動で行うことは、メンテナンスの悪夢です。Codeplex で AutoMapper を見てきましたが、私の場合、オーバーヘッドが深刻な問題になる可能性があると思います。さらに、PostSharp を使用すると、マッピング規則をさらに制御できると思います。誰かがこの問題の王様との経験を共有できれば、それは素晴らしいことです.
私が考えている方向は次のようなものです(これが不可能な場合は誰かに教えてください):
私がクラスに固執することを計画している側面は、次の2つのメソッドをコンテンツで埋めます:
最初のメソッドは DTO に基づいてエンティティを返し、2 番目のメソッドは反対のことを行います。アスペクト内では、各プロパティをループして、新しいターゲットを作成し、プロパティの値をターゲット オブジェクトの対応するオブジェクトに割り当てます。実行時のオーバーヘッドなしでコンパイル時にこれを行うことは可能ですか?
events - PostSharp - イベントのサブスクリプションとコレクションの追加を自動化
PostSharp を使用して解決したい繰り返しのルーチン タスクは、イベント サブスクリプションとコレクションの追加です。親のオブジェクト プロシージャを各子オブジェクトのイベントにサブスクライブしたいと思います (子はリストに含まれています)。また、親のすべてのリストを親のマスター リストに追加したいと思います。どのアスペクトを使用する必要がありますか、またはどの方向に考えるべきですか?
上記の問題の例を以下に示します...
私は次のインターフェースを持っています:
次のステータス タイプがあります。
上記の構造と実装は次のとおりです。
c# - IL のコンパイル後の変更を実行するツールはどれですか?
PostSharp についての最近の言及で、次のことを思い出しました。
私が働いていた昨年、PostSharp を使用してインストルメンテーションをコードに挿入することを考えていました。これは、Team Foundation Server チーム ビルド/継続的統合環境にありました。
考えてみると、PostSharp の動作方法 (コンパイラによって生成された IL を編集する) についてしつこい感じがしました。これは少し気になりました。
私は、PostSharp が正しく機能しないことをあまり心配していませんでした。このようなツールについて聞いたのは初めてだったので心配でした。他のツールがこれを考慮していないのではないかと心配していました。
実際、作業を進めていくと、PostSharp が元の IL がどのフォルダーにあるかについて混乱していたという事実に起因する問題がいくつか発生しました。これにより、ビルドが壊れていました。プロジェクト参照を解決する MSBUILD ターゲットとの競合が原因のようです。この競合は、PostSharp が一時ディレクトリを使用して変更されていないバージョンの IL を保存しているためと思われます。
とにかく、当時は参照する StackOverflow がありませんでした。ビルド プロセスの一部として IL を編集するツールを他にご存知でしょうか。または、マイクロソフトがそのようなツールを Visual Studio、MSBUILD、チーム ビルドなどで考慮に入れているかどうか。
更新:回答ありがとうございます。
要するに、少なくとも VS 2010 では、Microsoft はこの種のことが起こる可能性があることを認識しておく必要があるようです。したがって、VS2010 でこの領域に問題がある場合、Microsoft が責任を共有する可能性があります。
postsharp - PostSharp OnExceptionAspect が期待どおりに機能しない
PostSharp で OnExceptionAspect をテストするための単純なクラスを作成しました。
メソッドに属性を追加しました
そしてそれを呼び出しました。
ただし、例外は実際には飲み込まれません。これは奇妙に思えます。
同様の問題を見つけることができなかったので、うまくいかなかった小さなことがあると思います。誰?