Question

I need to map ntext column of a table using the mapping by code feature in NHibernate 3.2, so that it doesn't get truncated to 4000 characters.

What do I neet to change in the following example? "Notes" is the property which has ntext type in sql table:

Property(emp => emp.Notes);

Note: Please don't mix it with fluent NHibernate or hbm file mapping.

Was it helpful?

Solution

So, I solved the problem as following:

Property(emp => emp.Notes, map => map.Column(col => col.SqlType("ntext")));

Actually, all what we need to do is: tell the NHibernate mapper the actual type of the column in sql. :)

The solution comes from here as pointed by jbl.

OTHER TIPS

Maybe you can try this, which should also work for nvarchar(max) columns :

Property(emp => emp.Notes, m => m.Type(NHibernateUtil.StringClob));

Hope this will help

Try:

Property(emp => emp.Notes, mapinfo => mapinfo.Lenth(someHighValue));

If the length provided is larger than what can fit in a varchar, NHibernate will switch to a different character type.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top