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

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

当我尝试插入大量数据时,有时(插入大量记录时),我收到错误消息:xml解析行1字符4000输入意外结束。

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

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

提前致谢。

#1楼 票数:1 已采纳

我实际上将其更改如下:

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

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

  ask by Djave translate from so

未解决问题?本站智能推荐:

1回复

NHibernate中的多对多关系(FluentNHibernate)在数据库中创建意外记录

我将Fluent NHibernate用于商店和产品之间的多对多关系。 我没有发布实体,因为它是无关紧要的。 这些是我的映射 这是我的示例代码,试图在数据库中插入记录: 样例代码: 为什么第二个选项起作用而第一个选项不起作用? 我了解这种情况的发生是因为我要在产品中添加商店并保
2回复

流利的NHibernate,SQLServer和字符串长度规范无法按预期工作

我正在阅读NHibernate的Summer教程,但是我没有使用xml映射,而是使用Fluent NHibernate进行了映射。 我的客户实体类是: 对应的映射类是: 我的DAO课是: 最后我的测试是: 测试运行时,不会引发任何异常! 所以我的第一个问题是,是否有人可以看
1回复

流利的NHibernate的唯一字符串表

我有一个类Item和一个类ItemAttribute,其中Item具有类型为ItemAttribute的属性。 ItemAttribute只有两个属性,一个名为ID的Guid和一个名为name的字符串。 这里的想法是我想存储一个名为ItemAttributes的表,其中包含唯一字符串列表。
4回复

如何使NHibernate停止使用nvarchar(4000)插入参数字符串?

我需要优化域实体上的保存(插入查询)生成的查询。 我已经使用Fluent NHibernate配置了NHibernate。 这是NHibernate在插入用户对投票的响应时生成的查询: 如果查看IpAddress和CountryCode的输入参数,可以注意到NHibernate正在使用
1回复

流利的NHibernation唯一字符串映射(忽略重复项)

我有这张桌子 id(int,pk,ai), 字(varchar 25) 可以说,我允许用户向我的数据库添加新的单词。 我希望Nhibernate跳过添加已经存在的新单词。 我如何才能流利地绘制它? 那可行吗? 谢谢
1回复

带有SubclassMap的FluentNHibernate1.2导致“没有行具有给定的标识符”错误

我正在尝试升级到Fluent NHibernate 2.1(内部版本694)。 结果,我还将升级到NHibernate 3.0。 我遇到“ Table-Per-Subclass”映射问题,在尝试检索数据时会导致错误。 重要说明:这些表和类可与FluentNhibernate以前版本中存在
1回复

线程“main”中的异常org.hibernate.InvalidMappingException:无法解析资源emp.hbm.xml中的映射文档

我已经面临这个问题,我已经查看了许多关于此错误的帖子,但没有得到正确的反对此视图链接 / * *要更改此许可证标题,请在“项目属性”中选择“许可证标题”。 *要更改此模板文件,请选择“工具”| 模板*并在编辑器中打开模板。 * /包装店; import tackshop.empCla
5回复

NHibernate.ObjectNotFoundException:不存在具有给定标识符的行

这是我的错误: 系统的一个用户偶然会遇到这个错误,这对我来说完全没有意义。 我所知道的: 教师表引用用户表。 不知何故,Teacher表有一行引用User表中的一行,但该行在User表中不存在。 知道为什么会这样吗? 请指教! 改述我的Qn: 我知道这个错误意味着