Mono 不支持 SQL Server 时间戳列?

发布于 2024-09-08 00:00:38 字数 962 浏览 1 评论 0原文

我正在尝试使用 Mono 在 Linux 中运行 .NET 命令行应用程序。它访问 SQL Server 2005 Express 数据库,并在查询某些数据时抛出以下异常:

System.NotSupportedException: Unknown Type : timestamp
  at Mono.Data.Tds.TdsMetaParameter.GetMetaType () [0x00000] 
  at Mono.Data.Tds.Protocol.Tds70.WriteParameterInfo (Mono.Data.Tds.TdsMetaParameter param) [0x00000] 
  at Mono.Data.Tds.Protocol.Tds70.ExecRPC (System.String rpcName, Mono.Data.Tds.TdsMetaParameterCollection parameters, Int32 timeout, Boolean wantResults) [0x00000] 
  at Mono.Data.Tds.Protocol.Tds70.ExecProc (System.String commandText, Mono.Data.Tds.TdsMetaParameterCollection parameters, Int32 timeout, Boolean wantResults) [0x00000] 
  at System.Data.SqlClient.SqlCommand.Execute (Boolean wantResults) [0x00000] 
  at System.Data.SqlClient.SqlCommand.ExecuteReader (CommandBehavior behavior) [0x00000]

查询的表有一个 RowVersion 列,其类型为 timestamp。在 Mono 中运行 .NET 应用程序时,是否可以在 SQL Server 中使用时间戳列?

I am trying to run a .NET command line application in Linux using Mono. It accesses SQL Server 2005 Express database and, when querying some data it throws the following exception:

System.NotSupportedException: Unknown Type : timestamp
  at Mono.Data.Tds.TdsMetaParameter.GetMetaType () [0x00000] 
  at Mono.Data.Tds.Protocol.Tds70.WriteParameterInfo (Mono.Data.Tds.TdsMetaParameter param) [0x00000] 
  at Mono.Data.Tds.Protocol.Tds70.ExecRPC (System.String rpcName, Mono.Data.Tds.TdsMetaParameterCollection parameters, Int32 timeout, Boolean wantResults) [0x00000] 
  at Mono.Data.Tds.Protocol.Tds70.ExecProc (System.String commandText, Mono.Data.Tds.TdsMetaParameterCollection parameters, Int32 timeout, Boolean wantResults) [0x00000] 
  at System.Data.SqlClient.SqlCommand.Execute (Boolean wantResults) [0x00000] 
  at System.Data.SqlClient.SqlCommand.ExecuteReader (CommandBehavior behavior) [0x00000]

Queried table has a RowVersion column whose type is timestamp. Isn't it possible to use timestamp columns in SQL Server when running .NET applications in Mono?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

゛时过境迁 2024-09-15 00:00:38

通过 MoMA(Mono 迁移分析器)运行您的应用程序。它应该告诉您 Mono 支持和不支持什么。

更新:

查看了源代码,其中抛出此问题(GetMeteType,从第 334 行开始),实际上 timestamp 是类型列表中缺失。

提出错误

Run your application through MoMA (Mono Migration Analyzer). It should tell you what is and isn't supported by Mono.

Update:

Took a look at the source code, where this is thrown (GetMeteType, starting on line 334), and indeed timestamp is missing from the list of types.

Raise a bug.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文