我有一个MVC 3项目。在sql server中,我有一个名为NewsContent的字段,它是一个文本字段。
以下是模型中属性的定义:
[Display(Name = "Content")]
[DataType(DataType.MultilineText)]
[AllowHtml]
public virtual string NewsContent { set; get; }
当我将其保存到数据库时,它会截断。好吧Text
为什么要截断?
我该如何解决?
我可以在调试器中看到该对象具有所有文本,当我查看数据库时它被截断。
答案 0 :(得分:3)
试试这个:
Map(x => x.NewsContent).CustomType("StringClob").CustomSqlType("nvarchar(max)")
答案 1 :(得分:0)
在某些NHibernate版本中,由于底层ADO.NET在某些情况下具有此行为,因此存在截断行为。这在NH 3.3中已经改变,因此如果字符串比允许的长,NHibernate将抛出异常。
以上适用于使用MS SQL Server作为数据库时。如果您正在使用此数据库,或者仍然在此版本的NHibernate中看到此问题,则应将其视为应修复的错误。请报告。