Hello stack overflow resident! это мой первый пост, и я надеюсь получить некоторую помощь. Я искал, но потому что я все еще очень новый, я не смог полностью найти/понять свой ответ.не может преобразовать строку на сегодняшний день
Я постоянно встречая эту ошибку:
Message: Conversion from string "" to type 'Date' is not valid. File: ~/reports/pendingshipments.aspx Function: btnExportXls_Click Stack Trace: at Microsoft.VisualBasic.CompilerServices.Conversions.ToDate(String Value) at reports_default.btnExportXls_Click(Object sender, EventArgs e) in C:\Users\jet.jones\Documents\ERIRoot\ERITitan\ERITitan.ssa\Web Application\reports\pendingshipments.aspx.vb:line 75
Вот мой код:
на App_Code
**Public Function Reports_PendingShipments(ByVal intClientID As Integer, ByVal strMinDate As Date?, ByVal strMaxDate As Date?, ByVal xmlSiteID As String) As DataTable
'=================================================================================
' Author: Jet Jones
' Create date: 2013.05.28
' Description: Returns a data table with pending shipments for the sites specified
'=================================================================================
Dim objConn As New SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings("Titan").ToString)
Dim cmdGet As New SqlCommand("spReports_PendingShipments", objConn)
Dim parClientID As New SqlParameter("@ClientID", SqlDbType.Int)
Dim parMinDate As New SqlParameter("@MaxDate", IIf(Not strMinDate.HasValue, DBNull.Value, strMinDate))
Dim parMaxDate As New SqlParameter("@MaxDate", IIf(Not strMaxDate.HasValue, DBNull.Value, strMaxDate))
Dim parSiteID As New SqlParameter("@Sites", SqlDbType.Xml)
Dim objAdapter As New SqlDataAdapter(cmdGet)
Dim objTable As New DataTable
parClientID.Value = intClientID
parMinDate.Value = strMinDate
parMaxDate.Value = strMaxDate
parSiteID.Value = xmlSiteID
'set up the command object
cmdGet.Connection = objConn
cmdGet.CommandType = CommandType.StoredProcedure
'add the parameters
cmdGet.Parameters.Add(parClientID)
cmdGet.Parameters.Add(parMinDate)
cmdGet.Parameters.Add(parMaxDate)
cmdGet.Parameters.Add(parSiteID)
'open the connection
objConn.Open()
'execute the query and fill the data table
objAdapter.Fill(objTable)
'return the data table
Reports_PendingShipments = objTable
'clean up
objConn.Close()
objConn = Nothing
End Function**
моя страница aspx.vb называет эту функцию следующим образом (Получить значения из запрос):
objTable = Reports_PendingShipments(ucClientSearch.Value,
txtMinDate.Text, txtMaxDate.Text, strSites)
Я передаю переменную strSites, потому что разрешения веб-сайта позволяют пользователям иметь доступ к одному или нескольким местоположениям сайта, а если отчет выполняется, и пользователь выбирает «Все сайты» из раскрывающегося списка, я хочу только отправить сайтов, на которые у них есть разрешения через XML.
Если мне не хватает какой-либо информации, пожалуйста, дайте мне знать! Чрезвычайный отзыв об этом очень приветствуется.
Дать нам формат даты, который вы пытаетесь преобразовать, будет началом. – Gabe
да, сэр! пользователь может ввести даты в этом формате. 5/30/2013 – JettyJetty
Сообщение об ошибке довольно специфично. Где-то у вас есть пустая строка, которую вы пытаетесь сделать в дату ... Какое точное содержание строки 75 в исходном коде? – Sparky