В моей TimeIn.aspx файл, я отображение часов с помощью следующего кода:TimeSpan преобразование не
<div>
<div>
<asp:ScriptManager runat="server" ID="ScriptManager1" />
<br />
<asp:UpdatePanel runat="server" ID="UpdatePanel1">
<ContentTemplate>
<asp:Label runat="server" ID="Label4" Text="Current Time: "/>
<asp:Label runat="server" ID="Label2" />
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" />
</Triggers>
</asp:UpdatePanel>
<asp:Timer ID="Timer1" runat="server" OnTick="Timer1_Tick" Interval="1000" />
</div>
<br />
<br />
<asp:Button ID="Button1" runat="server" Text="Check In" OnClick="CheckIn" />
</div>
Часы работает отлично. Затем в TimeIn.aspx.cs файле, я написал CheckIn метод:
protected void CheckIn(object sender, EventArgs e)
{
TimeSpan currtime = TimeSpan.Parse(Label2.Text);
int eid = Convert.ToInt32(Session["EID"]);
DBClient = new DBConnection();
DBClient.CheckIn(eid, currtime, DateTime.Now.Date.ToString());
Response.Redirect("ECheckin.aspx");
}
В базе данных, тип данных CheckinTime
столбца Time(7)
.
Когда срабатывает событие CheckIn, он дает исключение в первой строке TimeSpan.Parse, поскольку Label2.Text имеет время с добавленным временным форматом (AM/PM).
Примерное значение Label2.Text: 1:41:28 PM
Какое лучшее решение для решения этой проблемы? Я действительно хочу использовать Time
тип данных в sql-сервере, потому что позже мне придется выполнять вычисления по временному полю.
Положите значение label2.Text/Database в questi на. –
'В базе данных столбцом данных типа CheckinTime является Time (7) .'. Означает?? –
@Nikhil Agrawal Я использую Sql Server 2008 в качестве базы данных. В моей таблице DB приложения есть столбец CheckinTime, типом данных которого является Time (7). Я хочу сохранить время проверки в этом поле. – Azeem