0
我使用時間跨度函數計算出天數,然後將此值添加到文本框並保存到數據庫。asp.net timespan
我最近添加了一個半天的單選按鈕,所以如果選中它,它將增加0.5天的假期而不是1天。這似乎在保存前顯示在文本框中時正常工作。但是,實際保存並更新數據庫時,顯示值爲1而不是0.5,如文本框中所示。
該字段在數據庫中的字段類型最初設置爲'int',但當我添加了半天它不會保存,因爲它試圖保存一個小數,我已經將此字段類型更改爲'decimal'因爲它認爲這會更合適..我不確定這是否正確或應該是不同的東西?
我似乎無法弄清楚爲什麼它不保存在文本框中指定的值...任何建議
Private Sub btnHNoDays_Click(sender As Object, e As System.EventArgs) Handles btnHNoDays.Click
'declare dates
Dim dtStart As Date = txtHStart_Date.Text
Dim dtEnd As Date = txtHEnd_Date.Text
'timespan function used to minus one date to another and produce a value
Dim ts As TimeSpan = (dtEnd - dtStart)
If RadioButton1.Checked Then
ts = (dtEnd - dtStart) - TimeSpan.FromDays(0.5)
Else
ts = (dtEnd - dtStart)
End If
' the value is set to to textbox.
txtNoofDays.Text = ts.TotalDays()
' the today days value
Console.WriteLine(ts.TotalDays)
End Sub
Protected Sub btnHRequestSave_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnHRequestSave.Click
'collect data
Dim Sdate = txtHStart_Date.Text
Dim Edate = txtHEnd_Date.Text
Dim NoofDays = txtNoofDays.Text
Dim notes = TxtHRequestNotes.Text
Dim username = lblHolidayRequestLIU.Text
'define connection
Dim HRequestConnection As New SqlConnection
HRequestConnection.ConnectionString = HolidayRequestSqlDataSource.ConnectionString
'create command
Dim HRequestInsert As New SqlCommand("Insert into HolidayRequests (username, RequestDateStart, RequestDateEnd, RequestTotalDays, RequestNotes) VALUES (@username, @Sdate, @Edate, @NoofDays, @notes)", HRequestConnection)
'define parameters
HRequestInsert.Parameters.Add("username", SqlDbType.NVarChar, 20).Value = lblHolidayRequestLIU.Text
HRequestInsert.Parameters.Add("Sdate", SqlDbType.Date).Value = txtHStart_Date.Text
HRequestInsert.Parameters.Add("Edate", SqlDbType.Date).Value = txtHEnd_Date.Text
HRequestInsert.Parameters.Add("NoofDays", SqlDbType.Decimal).Value = txtNoofDays.Text
HRequestInsert.Parameters.Add("notes", SqlDbType.NVarChar).Value = TxtHRequestNotes.Text
' execute commands
HRequestConnection.Open()
HRequestInsert.ExecuteNonQuery()
lblHolRequestResponse.Text = "Your holidays request has been saved!
End Sub
Thanks..this工作:)不過現在這只是例如2 2.0的值..可這不只是顯示爲一個單一的數字和只有需要小數點顯示的值或者是全部還是全部的情況? – user1055487 2012-03-20 22:50:00
它將作爲2.0存儲在SQL中。只要您將原始值寫入數據庫,就可以用任何您喜歡的方式將其呈現給TextBox中的用戶。 – 2012-03-20 22:57:22