Известны ли проблемы с отложенной загрузкой свойства, тип которого является байтом []? У меня есть столбец изображения на SQL Server 2008 дБ, и я пытаюсь отобразить его в свойство байта [] класса. Поскольку я не хочу загружать его всегда, я настроил его так, чтобы он использовал отложенную загрузку. Вот код:
public class Documento : Entity, IHasAssignedId<Int32> {
public virtual Byte[] Bytes { get; private set; }
//...more properties
}
Вот отображение:
Map( doc => doc.Bytes, "Documento" )
.CustomSqlType( "image" )
.CustomType<Byte[]>( )
.LazyLoad( )
.Not.Nullable( );
Теперь проблема в том, что когда я пытаюсь проверить сопоставления с помощью PersistenceSpecification, я получаю исключение, которое говорит:
NHibernate.PropertyAccessException: Invalid Cast (проверьте соответствие в соответствии с типами свойств); сеттер Срас.Ассистенсии.Документо
----> System.InvalidCastException: Невозможно привести объект типа 'System.Object' к типу 'System.Byte []'.
Если я настрою свойство таким образом, чтобы оно не использовало отложенную загрузку, или если я изменил его тип на Object (оставив отображение БД без изменений), все работает нормально. Есть идеи?