如何在Nhibernate映射文件中指定存储过程的字符串输入参数的长度。
这是我的地图内容
<sql-query name="Sp_News" resultset-ref="NewsPackResultSet" cacheable="false">
<query-param name="SearchString" type="System.String" />
<query-param name="StartDate" type="System.DateTime" />
exec dbo.Sp_News:SearchString,:StartDate
</sql-query>
当SearchString参数的长度超过4000个字符时,Nhibernate会截断该参数值。我该如何解决这个限制?
任何帮助将不胜感激。
答案 0 :(得分:6)
发现了这个问题并找到了答案:
IQuery query = session.GetNamedQuery("Sp_News");
query.SetParameter("SearchString", longString, NHibernateUtil.StringClob);
NHibernateUtil.StringClob 是关键: - )