转换无法从字符串

时间:2016-09-21 12:55:33

标签: vb.net winforms

好的,所以我遇到了问题 我知道stackoverflow中有很多问题,我看到了很多问题。但问题是我的查询是从DataReader间接加载的...
我看到了类似的问题,但无法理解,因为它在ASP.NET中使用C#

以下是我的代码......

cmd = New SqlCommand("Select * from FASPRODUCT WHERE FASPRODUCT.Trans_Date between '@ClaimFdt' and '@ClaimTdt'", con1)
        cmd.Parameters.Add("ClaimFdt", SqlDbType.DateTime).Value = ClaimFdt.value '(even tried .Text Property)
        cmd.Parameters.Add("ClaimTdt", SqlDbType.DateTime).Value = ClaimTdt.value  '(even tried .Text Property)

    Dim dr As SqlDataReader = cmd.ExecuteReader()
        Dim dt = New DataTable()
        dt.Load(dr) '----------------- exception caught from here

我的其他代码(不是这里)ExecuteNonQuery()时发生了这个问题,但是这里的一些人建议我添加参数,所以我再次尝试使用参数..

如果在VB.Net中有任何其他与我类似的问题,请将其标记为重复,甚至发布原始问题的链接,它将非常有用..

  

转换无法从字符串转换日期/时间

1 个答案:

答案 0 :(得分:1)

只需删除@ClaimFdt和@ClaimTdt中的引号, Reza Aghaei

cmd = New SqlCommand("Select * from FASPRODUCT WHERE FASPRODUCT.Trans_Date between @ClaimFdt and @ClaimTdt", con1) '------- Remove Quotes from @ClaimFdt and ClaimTdt
    cmd.Parameters.Add("ClaimFdt", SqlDbType.DateTime).Value = ClaimFdt.value '(even tried .Text Property)
    cmd.Parameters.Add("ClaimTdt", SqlDbType.DateTime).Value = ClaimTdt.value  '(even tried .Text Property)

Dim dr As SqlDataReader = cmd.ExecuteReader()
    Dim dt = New DataTable()
    dt.Load(dr) '----------------- exception caught from here