2010-09-13 17 views
18

DB şemamın bir varchar (max) dizesi vardır. Uzunluğu 4000 veya 8000'den fazla ayarlamak için diğer questions'u okudum, böylece eşleme sınıfında bir (n) varchar (max) üretecek, ancak eşleme sınıfımda Uzunluk (10000) kullandığımda, hbm dosyası aslında uzunluğu gösteriyor = "10000" ve 10000'den fazla karakter içeren bir varlığı kaydettiğimde, tam olarak 10000 karaktere kesiliyor.Kısaltılmamış bir varchar (max) dizgisi NHibernate ve Fluent NHibernate ile nasıl depolanır?

Kesilme istemiyorum.

(NH3-alfa2 ve FNH bagajı kullanarak)

cevap

21

şimdi oluşturur NHibernate 3.x cilt soyma eski bir sorun olduğunu görünür; Geçici çözümler hakkında here okuyabilirsiniz.

Not Not: Güncelleştirdiğim özgün bağlantıyı güncelliğini güncelledim.

+4

yaptı. Teşekkürler. –

+0

Bana da yardımcı oldu, teşekkürler –

+0

Bir hbm haritalama dosyasında, type = "string" yerine type = "StringClob" kullanın ve işiniz bitti demektir. Bu kesinlikle NH 3.3 için çalışır, ancak herhangi bir NH sürümü> = 3.0 için deneyin. – Oliver

17

Bu eşleme çalışması gerekir:

<property name="TheProperty" type="StringClob"> 
    <column name="TheColumn" sql-type="nvarchar(max)" /> 
</property> 

Sadece akıcı eşdeğer arayın.

+2

Bunun hiç bir zaman NHib 3'te düzgün bir şekilde tedavi edileceğini düşünüyor musunuz? Tür üzücü sql server özel ayrıntılar böyle eşlemenizde üzerinden kaçak görmek ... – DanP

+0

@DanP bir JIRA sorunu açabilir? –

+0

Zaten bir tane olduğuna inanıyorum: http://216.121.112.228/browse/NH-2302 Tesadüfen ... JIRA için bağışlanan bir alan adıyla ilgilenir misiniz? IP tabanlı bir URL'ye sahip olmak biraz rahatsız edici gibi görünmektedir;) – DanP

İlgili konular