C# 仅检测PM而非Am的时间选择器
我有一个数据库表,分别有两列time1和time2。time1包含C# 仅检测PM而非Am的时间选择器,c#,time,C#,Time,我有一个数据库表,分别有两列time1和time2。time1包含08:00(08:00:00.000),time2包含17:30(17:30:00.000)。time1和time2数据库字段的数据类型是datetime我有一个类似的代码 protected void txtdate_TextChanged(object sender, EventArgs e) { DateTime time1 = DateTime.ParseExact(txtdate.Text,"
08:00(08:00:00.000)
,time2包含17:30(17:30:00.000)
。time1和time2数据库字段的数据类型是datetime
我有一个类似的代码
protected void txtdate_TextChanged(object sender, EventArgs e)
{
DateTime time1 = DateTime.ParseExact(txtdate.Text,"dd-MM-yyyy",CultureInfo.InvariantCulture);
string time4 = time1.ToString("yyyy-MM-dd");
str = "select TimeIn,TimeOut from MusterRoll where EmpCode='" + ddcode.SelectedItem.Text + "' and Date='"+time4+"'";
dr = conn.query(str);
if (dr.Read())
{
DateTime time = dr.GetDateTime(0);
TimeSelector1.SetTime(time.Hour, time.Minute, TimeSelector1.AmPm);
DateTime time2 = dr.GetDateTime(1);
TimeSelector2.SetTime(time2.Hour, time2.Minute, TimeSelector2.AmPm);
}
}
代码工作正常,但我的TimeSelector 1显示20:00而不是08:00时间2显示正确的17:30时间。此代码如何仅检测PM?我的TimeSelector 1源代码为
<tr>
<td align="left" class="style2">
Punch I</td>
<td align="left">
<asp:UpdatePanel ID="UpdatePanel5" runat="server">
<ContentTemplate>
<div class="input-prepend" title="Update Punch I" data-rel="tooltip">
<cc1:timeselector ID="TimeSelector1" runat="server" DisplaySeconds="False"
SelectedTimeFormat="TwentyFour">
</cc1:timeselector>
</ContentTemplate>
</asp:UpdatePanel>
</td>
</tr>
冲床I
很遗憾,我对你的问题一无所知。但对我来说,“17:30 PM(17:30:00.000)”这个字符串看起来是错误的。通常情况下,“PM”表示您在am/PM系统中指定时间,因此我希望使用“05:30 PM”而不是“17:30 PM”。@RenniePet,它是24小时格式,因此17:30是的,我可以看到。但通常情况下,如果使用24小时制,则不包括任何“am”或“pm”指示。如果包括“am”和“pm”指示,则不指定时间为24小时。对我来说,看起来很奇怪,你的问题看起来很混乱。好了,现在你已经编辑了你的问题,删除了“AM”和“PM”位,所以它看起来像是正常的24小时格式。为什么您的第一个编程位包含“TimeSelector1.AmPm”和“TimeSelector2.AmPm”?(尽管如我所说,我对数据库编程一无所知,对基于web的表单也一无所知,如果这是您的第二个代码示例的话。)@RenniePet,如果我没有添加Timeselector1.AmPm,它会显示类似“No-重载方法”的错误SetTime“接受两个参数”。这就是为什么我要这样加上