【问题标题】:Linq return datetime from stored procedureLinq 从存储过程返回日期时间
【发布时间】:2017-02-01 13:48:08
【问题描述】:

我有一个名为 SQLBackupStatusLastRanDate 的存储过程,它返回一个名为 EventDateTime 的日期时间。

在我的 VB.net 应用程序中,我添加了一个 DataContextClass 并将存储过程添加到其中。我有两行代码(如下所示),我想将日期返回到变量中。

Dim logon As New LogonAuditDataClassDataContext
Dim backupRanTime As DateTime = logon.SQLBackupStatusLastRanDate("EventDateTime")

错误信息是不能转换为日期。

如果我不声明如下所示的变量类型

Dim logon As New LogonAuditDataClassDataContext
Dim backupRanTime = logon.SQLBackupStatusLastRanDate("EventDateTime")

我得到了错误

从字符串“EventDateTime”到类型“Integer”的转换无效。

我相信这应该很容易,但我遗漏了一些明显的东西。

【问题讨论】:

  • 请添加LogonAuditDataClassDataContext.SQLBackupStatusLastRanDate()的定义
  • 抱歉,不确定您的意思
  • 您的 SqlBackupStatusLastRanDate 具有某种类型的返回值。您尝试将返回的值分配给另一种类型的变量。显然这些类型并不相同,因为您的错误消息说它无法将返回的类型转换为您想要将返回值分配给的类型。 Chris 要求使用 SQLBackupStatusLastRanDate 的定义来扩展您的问题描述,尤其是返回类型。如果返回时没有报错,显示报错转换的语句。

标签: sql-server vb.net linq datetime stored-procedures


【解决方案1】:

玩了一会儿后,我将代码更改为:

Dim logon As New LogonAuditDataClassDataContext
Dim backupRanTime = logon.SQLBackupStatusLastRanDate().First.EventDateTime

这按预期工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多