0

我的 sql server 2008 数据库中有一个类型为“xml”的列(名为 MetaData)。我的映射如下:

Table("AuditLogs");
Id(x => x.Id, "AuditLogRecId").GeneratedBy.Identity();
Map(x => x.MetaData)

当我尝试插入大量数据时,有时(插入大量记录时),我得到错误:xml parsing line 1 character 4000 unexpected end of input。

我现在将 MetaData 列的映射更改如下: Map(x => x.MetaData).Length(1000000000);

现在我没有收到任何错误,但我不确定这是否是解决此问题的正确方法。我想得到一些关于这个的好建议。

提前致谢。

4

1 回答 1

1

我实际上会改变它如下:

Map(x => x.MetaData).Length(Int32.MaxValue);

原因是 2gb 是 xml 列类型的最大长度。如果您不指定,我相信 NHibernate 默认为 4000 字节。

于 2012-09-17T19:31:53.433 回答