Converting a string into date format in the code behind
本问题已经有最佳答案,请猛点这里访问。
我正在使用jquery日期选择器提取日期,并使用以下代码将其存储在文本框中
在头部
1 2 3 4 5 6 7 8 9 10 | <script src="Scripts/jquery.ui.datepicker.js" type="text/javascript"> <script type="text/javascript"> $(function () { $("#<%= TxtDatepicker_start.ClientID %>").datepicker(); }); <script type="text/javascript"> $(function () { $("#<%= TxtDatepicker_end.ClientID %>").datepicker(); }); |
在身体部位
BR/>开始日期:
1 2 3 | End Date: </asp:TextBox> <br /> |
BR/>
现在的问题是,如何获取文本框中的值并将其转换为代码隐藏的日期(YYYY-MM-DD)格式?
我试过打字,但在后面的代码中发现了这个错误。
无法将System.DateTime隐式转换为System.Common.DBParameter
我在代码隐藏中使用的代码是
1 2 3 4 5 6 7 | protected void SqlDataSource2_Selecting(object sender, SqlDataSourceSelectingEventArgs e) { e.Command.Parameters["@username"].Value = HttpContext.Current.User.Identity.Name; e.Command.Parameters["@Txt_selected_start_date"] = DateTime.Parse(TxtDatepicker_start.Text); } |
谢谢
问题是,e.command.parameter["…"]需要的类型不是datetime。字符串通常有效,请尝试
1 | DateTime.Parse(txtDatepicker_end.Text).ToString("YYYY-MM-dd"); |
datetime的toString()方法将允许您对日期应用任何格式。
你也忘记了:
1 | e.Command.Parameter["..."] |
应该是
1 | e.Command.Parameter["..."].Value |
需要将结果赋给dbparameter的.value属性:
1 | e.Command.Parameters["@Txt_selected_start_date"].Value = DateTime.Parse(TxtDatepicker_start.Text); |
1 | DateTime.Parse(TxtDatepicker_end.Text); |