マッピングで遅延読み込みに設定されたバイナリ列を持つエンティティがあります。ただし、場合によっては、エンティティとバイナリデータを同時に取得する必要があります。Linq.Fetch(x => x.BinaryData)を使用しようとしましたが、無効な結合例外が発生します。そもそも参加すべきではないことを考えると、理解できます。これを機能させる方法はありますか?NHibernate3.1を使用しています
これはマッピングです:
Map(x => x.BinaryData)
.CustomSqlType("image")
.Length(int.MaxValue)
.Not.Nullable()
.LazyLoad(); // Wanna make sure we don't kill the app by loading the image data when we don't need it.
これはフェッチです:
Linq.Where(x => x.Id == id).Fetch(x => x.BinaryData).FirstOrDefault();