私は、それぞれが共有コアdllを使用する完全に独立した2つのWebアプリケーションを持っています。デプロイメントとバージョン管理の目的のために、どちらのアプリケーションにも "コア" dllのコピーを1つ配布したいと思っています。また、必要に応じて、展開時にコアDLLをオプションとして使用する機能をサポートできるようにしたいと考えています。つまり、app1はコアdllバージョン1を使用し、app2はコアdllバージョン2を使用できます。これらの機能をサポートするために、パス単位で実装クラスを解決するDIコンテナはありますか? IOW、app1はc:\ corev1 \ core.dllの実装クラスを取得し、app2は簡単な例としてc:\ corev2 \ core.dllの実装クラスを取得しますか?私は、すべてのアプリケーションが独立している展開戦略のために、core.dllへの直接参照を避ける必要があります。DI外部DLLの使用
3
A
答えて
2
これを行うにはDIまたはコンテナは必要ありません。 Assembly Versioningは、そのままの状態で.NETでサポートされます。
アプリケーションごとにcore.dllと残りのアプリケーションバイナリを一緒に配備し、それぞれを独立してバージョンアップするだけです。
3
DIは必ずしもDIである必要はなく、プラグイン可能であるように思えます。 MEFをご覧ください。
関連する問題
- 1. 外部DLLでSSISデータフローの行を使用する
- 2. Air Native Extensionで外部DLLを使用するには?
- 3. CMakeプロジェクトで外部DLLを使用する方法
- 4. NPAPIプラグイン拡張を使用した外部dllパッキング
- 5. C++ - DLLインジェクタの未解決の外部
- 6. .NETでの外部DLLのデバッグ
- 7. OSGiの内外で使用されるバンドルの推奨DIソリューション
- 8. C++ DLL:未解決の外部シンボル
- 9. Silverlight:外部DLLのリファレンスリソース辞書
- 10. Autofac DI inステートメントの使用
- 11. Inno Setupのアンインストールプロセス用に外部DLLをロード
- 12. DIを使ってDI
- 13. 外部DLLをアップグレードするには?
- 14. 外部エイリアスvs.リフレクションvs. System.AddinマルチDLLテスト?
- 15. NUnitテストで外部アンマネージドDLLをアンロード
- 16. DIを使用したSQLDependency
- 17. 外部キーの使用
- 18. は、外部ライブラリの未使用部分
- 19. 単体テストでのDIコンテナの使用
- 20. インデント用の外部プログラムの使用
- 21. 使用外部パラメータ - ServiceStack
- 22. 外部PHPを使用
- 23. 使用外部LIBSは
- 24. appsettings.jsonのDIでApplicationDbContextを使用する
- 25. Cでのblowfishの使い方C#での外部DLLとしての
- 26. 左外部結合によりペンタオDIの行が削除される
- 27. Arel:シンボルを使用した外部外部結合
- 28. 私はlimit_choices_toで外部キーを使用する外部キー
- 29. f2pyでの外部データファイルの使用
- 30. Angular 2の外部ライブラリの使用
これは良い提案であり、私が与えた過度の簡略化されたシナリオに対して有効です。 MEFは私の問題を解決し、問題の状態としてdllを直接参照するのを避けることを可能にしました。私たちの開発プロセスと現行のCIプロセスにはいくつかの作業が必要ですが、最終的には簡略化されたアプローチを使用する方向に向かっていますが、今はできません。 – codeEmitter