0

我有一个 MVC 3 项目。在 sql server 中,我有一个名为 NewsContent 的字段,它是一个文本字段。

这是模型中属性的定义:

    [Display(Name = "Content")]
    [DataType(DataType.MultilineText)]
    [AllowHtml]
    public virtual string NewsContent { set; get; }

当我将其保存到数据库时,它会被截断。那么它Text为什么会被截断?

我该如何解决?

我可以在调试器中看到该对象包含所有文本,当我查看数据库时它被截断。

4

2 回答 2

3

尝试这个:

Map(x => x.NewsContent).CustomType("StringClob").CustomSqlType("nvarchar(max)")
于 2012-10-05T03:12:21.850 回答
0

在某些 NHibernate 版本中,由于底层 ADO.NET 在某些情况下具有此行为,因此会出现这种截断行为。这在 NH 3.3 中进行了更改,因此如果字符串长于允许的长度,NHibernate 将抛出异常。

以上适用于使用 MS SQL Server 作为数据库的情况。如果你正在使用这个数据库,或者在这个版本的 NHibernate 中仍然看到这个问题,应该认为是应该修复的 bug。请报告。

于 2012-10-05T06:59:47.183 回答