Csharp/C#教程:通过Massive ORM(ExecuteNonQuery),UdtTypeName错误更新带有空间数据类型的SQL Server 2008记录分享


通过Massive ORM(ExecuteNonQuery),UdtTypeName错误更新带有空间数据类型的SQL Server 2008记录

我正在尝试使用Rob Conery的Massive“动态ORM”来查询我的数据库(到目前为止工作得很好)。 当我将Geography字段添加到表格时出现问题。

这是错误: UdtTypeName property must be set for UDT parameters

更新(14Apr2011):抛出exception的ADO方法是.ExecuteNonQuery(); 这是抛出exception的Massive.cs中的方法:

  public virtual int Execute(IEnumerable commands) { var result = 0; using (var conn = OpenConnection()) { using (var tx = conn.BeginTransaction()) { foreach (var cmd in commands) { cmd.Connection = conn; cmd.Transaction = tx; result += cmd.ExecuteNonQuery(); } tx.Commit(); } } return result; } 

抛出它的特定行是: result += cmd.ExecuteNonQuery();

这是表格的重要部分:

使用Massive很难找到其他任何人,但我确实报告了Massive的GitHub问题选项卡上的错误。 您可以在此处查看Massive的源代码 。

我不确定如何最好地将它集成到Massive中,但基本上你需要完成错误所说的内容:

 yourGeographyParam.UdtTypeName = "Geography"; 

基本上SQL Server需要您为“怪异”参数显式命名UdtTypeName:

https://devlicio.us/blogs/sergio_pereira/archive/2008/06/11/udttypename-and-net-data-types-in-sql.aspx

上述就是C#学习教程:通过Massive ORM(ExecuteNonQuery),UdtTypeName错误更新带有空间数据类型的SQL Server 2008记录分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1021854.html

(0)
上一篇 2022年1月6日
下一篇 2022年1月6日

精彩推荐