C# プロジェクトの 1 つで ReSharper の「参照の最適化」機能を使用したところ、Fluent Nhibernate / Nhibernate への参照のペアが削除されました。そのプロジェクトで直接何も参照していないので、これは完全に有効だと思いました。
ソリューションを再構築すると、次のように迎えられました。
タイプ 'FluentNHibernate.Mapping.ClassMap`1' は、参照されていないアセンブリで定義されています。
プロジェクト (これをAと呼びます) は、Fluent Nhibernate を直接参照していませんが、マッピングに Fluent NHibernate を使用する別のプロジェクトBを参照しています。AでのBの使用に関しては、その中に FNH Map を持つクラスを使用しますが、その内部クラスをA のどこでも使用/参照しません。
.Net プロジェクトがコード内のアセンブリを直接参照していなければ、プロジェクト参照に含まれる必要はないと思いました。それとも、この場合、この仮定は間違っていましたか?