我的c#应用程序中有一个datepicker,提供如下字符串:
&#34 2016/1/1"
&#34 2016/11/15"
但我想将它们改为以下格式:
" 2016/01/01#34;
&#34 2016/11/15"
我使用此代码:
string searchstring = " and ProductStartDate Between '" +
String.Format("{0:yyyy/MM/dd}", Convert.ToDateTime(calender_from.Text)) +
"' and '" +
String.Format("{0:yyyy/MM/dd}", Convert.ToDateTime(calender_to.Text)) + "'";
但是当我运行以下错误时出现:
未处理的类型' System.FormatException'发生在mscorlib.dll
其他信息:字符串未被识别为有效的DateTime。
有什么想法吗?
答案 0 :(得分:3)
使用DateTime.ParseExact
代替Convert.ToDateTime
:
calender_from.Text = "2016/1/1";
DateTime date = DateTime.ParseExact(calender_from.Text, "yyyy/M/d", null);
然后你可以这样做:
string searchstring = " and ProductStartDate Between '" + String.Format("{0:yyyy/MM/dd}", date) + ...