C# SQL Server或NHibernate正在截断文本
我有一个MVC3项目。在sql server中,我有一个名为NewContent的字段,它是一个文本字段 以下是模型中特性的定义:C# SQL Server或NHibernate正在截断文本,c#,sql-server,asp.net-mvc-3,nhibernate,C#,Sql Server,Asp.net Mvc 3,Nhibernate,我有一个MVC3项目。在sql server中,我有一个名为NewContent的字段,它是一个文本字段 以下是模型中特性的定义: [Display(Name = "Content")] [DataType(DataType.MultilineText)] [AllowHtml] public virtual string NewsContent { set; get; } 当我将其保存到数据库时,它将被截断。它是Text为什么要截断 我怎样才能修好它 我可以在
[Display(Name = "Content")]
[DataType(DataType.MultilineText)]
[AllowHtml]
public virtual string NewsContent { set; get; }
当我将其保存到数据库时,它将被截断。它是Text
为什么要截断
我怎样才能修好它
我可以在调试器中看到对象包含所有文本,当我查看数据库时,它被截断。尝试以下操作:
Map(x => x.NewsContent).CustomType("StringClob").CustomSqlType("nvarchar(max)")
试试这个:
Map(x => x.NewsContent).CustomType("StringClob").CustomSqlType("nvarchar(max)")
在某些NHibernate版本中,由于底层ADO.NET在某些情况下具有这种行为,因此出现了这种截断行为。这在NH3.3中进行了更改,因此如果字符串长度超过允许的长度,NHibernate将抛出异常
当使用MS SQL Server作为数据库时,上述内容适用。如果您正在使用这个数据库,或者在这个版本的NHibernate中仍然看到这个问题,那么应该将它视为应该修复的bug。请报告。在某些NHibernate版本中,由于底层ADO.NET在某些情况下具有这种行为,因此出现这种截断行为。这在NH3.3中进行了更改,因此如果字符串长度超过允许的长度,NHibernate将抛出异常
当使用MS SQL Server作为数据库时,上述内容适用。如果您正在使用这个数据库,或者在这个版本的NHibernate中仍然看到这个问题,那么应该将它视为应该修复的bug。请报告。数据库字段的类型和大小是什么?
newcontent
和类型是Text
对不起,我也应该要求提供nh地图。Fluent语句、xml或whateverfluentMap(x=>x.newcontent)
我不知道这是否重要。数据库字段的类型和大小是什么?新闻内容
和类型是文本
对不起,我也应该要nh地图。Fluent语句、xml或whateverfluentMap(x=>x.newcontent)我不知道这是否重要。