Zaktualizowałem wersję Fluent Nhibernate 1.0 z Nhibernate 2.1 do wersji pre- z wersją NHibernate 3.0 GA i osiągnąłem to, co według mnie jest regresem, ale chcę usłyszeć, czy rzeczywiście tak jest.Blot binarny obcięty do 8000 bajtów - SQL Server 2008/varbinary (max)
Używam SQL Server Express 2008 i dialekt MSSQL 2008 i mają właściwość Wizerunek typu System.Drawing.Image i ja odwzorowane go jak tym:
Map (food => food.Image)
.Length (int.MaxValue)
.Nullable();
kolumny w Image
tabela jest typu varbinary(MAX)
.
Wygenerowany HBM dla nieruchomości wynosi:
<property name="Image" type="System.Drawing.Image, System.Drawing,
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<column name="Image" length="2147483647" not-null="false" />
</property>`
Jednak bez względu na to, co robię blob binarny jest obcięty do 8000 bajtów gdy odcinkach z aktualnymi wersjami FNH i NH. To nie wykorzystało w przypadku poprzednich wersji.
Pomysły na to, dlaczego tak się dzieje i jak je naprawić/obejść?
Mam ten sam problem z NHibernate 3.1.0.4000. czy robię coś źle? – labilbe
Nie wiem - używam łatanego 3.0 i nie mogę zaktualizować do wersji 3.1, aby przetestować teraz z powodu innych pakietów w wersji 3.0. Najłatwiej byłoby pobrać test z raportu o błędzie, zamienić 3.0 na 3.1 i sprawdzić, czy nadal się wyświetla. Jeśli tak, powinniśmy ponownie otworzyć defekt i tymczasowo można użyć niestandardowego UserType dla obrazu, który wymusza wielkość danych. –
Po kolejnych testach, znalazłem NH 3.1.0 już nie jest buggy. Używałem uszkodzonych danych (zapisanych w 8000 bajtów) innej wersji, wtedy miałem trudności ze znalezieniem przyczyny błędu. Teraz jest ok. Dziękuję Ci! – labilbe