問題タブ [mef]
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# - クライアント PC で参照できないネットワーク共有から .dll を動的にロードする -- WCF?
PnP Composite Application Guidance を使用して WPF アプリケーションを設計しています。アプリケーションは、イントラネット内でローカルに実行されます。
モジュールは、ユーザーの役割に基づいて動的にロードされます。したがって、モジュールはネットワーク共有を介してアプリケーションにアクセスできる必要があり、クライアント マシンからアクセスできる必要があります。
私がやりたいことは、スタッフがアクセスできない場所にすべてのモジュール .dll を保持することですが、要求されたとき、および現在のユーザーがそのモジュールを使用するために認証されているときに、それらを複合アプリケーションに提供できるようにすることです。
私の考えでは、(サーバー上の) WCF サービスは .dll リポジトリにアクセスできますが、どのクライアント マシンもそれにアクセスできません。認証もサービスによって処理されます。
どういうわけか物事を複雑にしすぎているのではないかと思います。
これは、単純なファイルシステム構成と、共有フォルダーにアクセスするときに資格情報をプログラムで渡すことで実行できるものですか? これを行うと、呼び出し元のアプリケーションにのみアクセスが許可されますか? それとも、ログオンしているユーザーが共有フォルダーに移動できるようになりますか?
これは、何らかの形で、MEF またはその他のプロジェクトで解決された問題ですか? (これが LMGTFY にふさわしくないことを願っています。何も思いつきませんでした。)
wpf - ImportingConstructorAttribute の使用
MEF と MVVM を使用して WPF アプリケーションを構築しようとしています。ViewModel をエクスポートしていますが、ViewModel がコンストラクターで Model パラメーターを受け入れるようにしたい: 特定のモデルを作成し、それを ViewModel のコンストラクターに提供します。ImportingConstructorAttribute がどのように機能するかを理解しようとしましたが、カスタマイズされたコンストラクターを持つ方法のようです。しかし、私はそれを使用する方法を理解できませんでした。
ImportingConstructorAttribute の使用に関する実際の例を誰かに教えてもらえますか?
前もって感謝します
c# - Visual Studio 2010 プラグインを作成し、コード エディターで Resharper のようなツールボックスを表示したい
Visual Studio 2010 用のプラグインを書きたいのですが、実際にはいくつかの問題に直面しています。私がやりたいことは簡単に思えます.Resharper(リファクタリングに役立つメニュー付きの小さなペン)のようにコードエディターでテキストを選択すると、小さなツールボックスが表示されることを望みます.
http://www.axtools.com/products-vs2010-extensions.php?tab=selection-popup
私が知りたいのですが :
開始に役立つ Visual Studio テンプレートはありますか? 「Editor Viewport Adornment」で試してみましたが、よくわかりません。
ツールボックスの開始から設計する必要がありますか、それともシステム ツールボックスからいくつかのボタンを表示できますか? リンクからのaxtoolsプラグインでは、カスタムメイドのツールボックスまたはシステムのものですか?
テキストが選択されたことを検出する方法は?
今のところこれ以上質問はありません。私はむしろ Web 開発者なので、ビジュアル スタジオ プラグインを作成することは私にとって新しいことです。
前もって感謝します。
visual-studio - 新しい VS2010 Editor Extensibilty でエディター オプションを作成する方法
VS2010 エディターの拡張ポイントのリストには、EditorOptionDefinitions の作成と小さなサンプルが記載されています。これを実行しようとすると、VS2010 UI のどこにもオプションが見つかりません。UI に表示されるようにこれらを作成するにはどうすればよいですか?
wpf - ViewModel通信の質問
さまざまな色の車で駐車場(私のお気に入りの例え)を表示するUserControlがあると想像してください。車を選択すると、別のUserControl(別のプロジェクト)に、選択した車の統計が表示されます。
ここで、ユーザーは車の統計UC、「同じ色の次の車」のボタンを必要としています。選択すると、同じ色で駐車場の次の車の統計(上から下、左から右)が表示されます。
それで、それが理にかなっているなら、質問に移りましょう。
現在、MVVM Liteを使用して、選択した車を含むメッセージを駐車場UCから車統計UCに送信しています。すべてが良いです。しかし、この新機能のリクエストでは、どうすればよいですか?統計UCは、駐車場UCに次の車を要求する必要があります。
これは、依存性注入を使用するのに適した場所でしょうか?それとも別のより良いアプローチがありますか?
wpf - DataTemplate で MVVM と MEF を使用するには?
アプリケーション内の新しいプロジェクトで MEF を使用しようとしています。物事はメインアプリレベルで機能しますが、アセンブリがメインアプリに含まれているこの別のプロジェクト(UserControl)では、何か疑問に思っています... UserControl があり、その中に次のものがあります:
私のMyViewModelでは、いくつかのものをエクスポートしましたが、アセンブリはうまく構成されているようです(これを確認するためにCompositionInfoTextFormatterを使用しています)。しかし、私の VM は MEF によってインスタンス化されていないか、少なくともコンストラクターが呼び出されません。そして、それが呼び出されると、MEF ではなく、WPF フレームワークからのものであるように見えます。
A) xaml で、VM をそのビューと MEF に関連付ける (上記と異なる場合)、および B) VM をインスタンス化して MEF が VM を制御し、エクスポートとインポートが機能するようにする正しい方法は何ですか?
現在、彼らはそうではありません。そのため、私はこれをすべて理解しようとしています:)
definition - Managed Extensibility Framework (MEF) とは何ですか?
私はググって、MEF に関する記事をいくつかしか入手できませんでした。誰かが簡単に説明してください:
- 管理拡張フレームワークとは何ですか?
- どのような目的で必要ですか?
- どうすればそれを使い始めることができますか?
ステップバイステップのガイダンスは役に立ちます、ありがとう!
c# - コンポーネントを MEF コンテナーで廃棄しますか?
MEF を使用して、DI の方法としてインターフェイスを実装クラスにマップします。たとえば、インターフェイスには Import 属性を使用し、実装クラスには Export 属性を使用します。私の理解では、MEF フレームワークは実装クラスのインスタンスを作成し、使用または自動注入のために MEF のコンテナーに保持します。
私の実装クラスのいくつかは IDispose インターフェイスを実装しています。インスタンスは MEF によって作成されるため、MEF が終了したときにコンポーネントが破棄される場合は、MEF がコンポーネントの Dispose メソッドを呼び出せるようにする必要があると思います。たとえば、私のアプリケーションでは、MEF のコンテナーへの参照を保持しています。アプリケーションが終了したら、コンテナーの Dispose メソッドを呼び出します。問題は、コンポーネントの Dispose が呼び出されないことです。
インポートとエクスポートのマッピングに関するコードの例を次に示します。
同様の方法で、他のマッピングのインポートおよびエクスポート定義が他にも多数あります。この方法でマッピングを作成し、MEF が関係と、マップされたインスタンスを作成する方法を認識できるようにします。AssemblyCatalog を使用してマッピングを読み込むアプリケーションのコードを次に示します。
ここで、インスタンスには、MEF によって CTOR を介して注入された他の多くのコンポーネントがあります。これらのコンポーネントには、MEF によって注入される他のコンポーネントも含まれています。問題は、一部のインスタンスが共有されているため、いつコンポーネントを破棄するかを決定するのが非常に難しいことです。1 つで Dispose を呼び出すと、他のユーザーはそれを使用できなくなります。この図でわかるように、インスタンスは MEF によって作成され、アプリケーション クラスに挿入されます。各コンポーネントは他のコンポーネントを認識してはならず、注入されたコンポーネントを使用してジョブを実行する必要があります。
アプリケーションが終了したとき、またはコンテナーが破棄されたときに、コンポーネントで Dispose を呼び出すように MEF に指示する場所/方法がわかりません。コンポーネントで Dispose を呼び出す必要がありますか? MEF がそれらを作成し、必要に応じてクライアントに挿入するため、それは正しくないと思います。クライアントは、ジョブを終了するときに Dispose を呼び出すべきではありません。
dependency-injection - MEF & 個別のインターフェイス アセンブリは、「すべてのクラスのインターフェイス」につながります
特に DI/IoC と MEF に足を踏み入れています。
私は、環境全体へのアクセスを必要とするインターフェイスによって定義された 2 種類のパーツ (おそらくそれ以上) を持つ Web アプリケーションを持っています。アプリケーションには、MEF によって構成された各タイプの具体的な実装のリストがあります。
環境は次のもので構成されます。
- いくつかのリポジトリ
- 現在のアプリケーション リクエスト
- レンダリング エンジン
- ナビゲーションエンジン
- 加えて、いくつかの静的ユーティリティ クラス
インターフェイス定義を別のアセンブリに配置し、同時に環境インジェクションを指定するにはどうすればよいですか?
明らかに、コントラクト アセンブリを参照する必要があり、循環参照を作成できないため、メイン アセンブリを参照することはできません。
環境クラスごとにインターフェイスを作成する必要があり、それらの公開されている型などを作成する必要があるようです...もっと良い方法があるはずです!
誰かが私にそれを指摘できれば、ここで明らかな大きな欠陥も見逃しているのではないでしょうか?
asp.net-mvc - Asp.net MVC を使用して mef プラグインで WCF を公開する
次のシナリオを実装したいと思います。
hammettで説明されているのと同様の方法で MEF と連携する ASP.Net MVC 。
許可する必要があることの 1 つは、MEF プラグインに WCF サービス (または asmx サービス - バックワード互換性) が含まれていることです。
MVC Web サイトに Web サービスを取得させ、それをhttp://websitename/MefPlugin/Service1.mvcとして公開させるために、どのようなアプローチを使用できますか?