[英]Error converting string to DateTime
private void SaveButton_Click(object sender, EventArgs e)
{
try
{
if (ValidateInput())
{
if (md.NAME_ID("LOGIN", "UID", "UNAME", UserNameTextBox.Text) != "")
{
MessageBox.Show("User already exist");
return;
}
string PASS = "";
if (UpassTextBox.Text != "")
{
PASS = base64Encode(UpassTextBox.Text);
}
else
{
PASS = "";
}
LoginTbl login = new LoginTbl(Convert.ToString(md.Max_ID("UID", "LOGIN")),
Convert.ToDateTime(DT1.Value.ToShortDateString()),
Convert.ToBoolean(ActiveRadioButton.Checked ? true : false),
UserNameTextBox.Text, PASS, MobileTextBox.Text,
RemarksTextBox.Text, UpdateCheckBox.Checked,
DeleteCheckBox.Checked, MenuCheckBox.Checked,
AddItemCheckBox.Checked, SearchItemCheckBox.Checked,
ListViewCheckBox.Checked, PurchaseCheckBox.Checked,
PurReturnCheckBox.Checked, PurPerformaCheckBox.Checked,
PurImportsCheckBox.Checked, PurReportsCheckBox.Checked,
SaleCheckBox.Checked, SaleReturnCheckBox.Checked,
SalePerformaCheckBox.Checked, SaleReportsCheckBox.Checked,
InventoryCheckBox.Checked, PaymentCheckBox.Checked,
JVCheckBox.Checked, AccLedgerCheckBox.Checked,
TrailCheckBox.Checked, PLCheckBox.Checked,
AccReportsCheckBox.Checked, SmsCheckBox.Checked,
EmailCheckBox.Checked, SmsReportsCheckBox.Checked,
StockNavigationCheckBox.Checked);
if (new LoginDAL().Save(login))
{
MessageBox.Show("User has been added successfully");
REFRESH_FORM();
T1.Text = Convert.ToString(md.Max_ID("UID", "LOGIN"));
}
else
{
MessageBox.Show("Not added try again");
}
}
else {
MessageBox.Show("Please enter into \'*\' empty fields");
}
}
catch (Exception ex)
{
MessageBox.Show("Error: " + ex.Source + ": " + ex.Message, "Connection Error !!");
}
}
當我嘗試保存時,它將給您錯誤提示從字符串轉換日期/時間時轉換失敗。
這里
Convert.ToDateTime(DT1.Value.ToShortDateString())
您將您的DateTime轉換為字符串,然后返回到日期。 這不是必需的。 刪除這兩個轉換並直接使用DT1.Value
。
為什么只將DateTime
轉換為string
,只是將其解析回DateTime
? 如果要從日期中刪除時間部分,請使用DateTime.Date
:
所以代替:
Convert.ToDateTime(DT1.Value.ToShortDateString())
這個
DT1.Value.Date
要將基於字符串的日期轉換為System.DateTime對象,可以使用Convert.ToDateTime(String)
方法或DateTime.Parse(String)
靜態方法。
Convert.ToDateTime(DT1.Value.ToShortDateString())
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.