DateTime ExpMonth = Convert.ToInt32(ddExpMonth); ---- DropDown(user selects a month)
DateTime ExpYear = Convert.ToInt32(ddExpYear); ---- Dropdown(user selects year)
Datetime ExpDate = ///// I want this part to be saved as Datetime 02/2012
Как это возможно. Или любым другим способом.
Значение DateTime
не знает формата - это просто дата и время. Вы можете создать новое значение DateTime
с соответствующей информацией:
DateTime expiry = new DateTime(Convert.ToInt32(ddExpYear),
Convert.ToInt32(ddExpMonth),
1);
... но то, как это «сохраняется», полностью зависит от вас. Если вы предоставите нам дополнительную информацию, возможно, мы сможем вам больше помочь. Вы можете легко отформатировать его в строку:
string formatted = expiry.ToString("yyyy/MM");
... но это может быть не то, что вам нужно.
Вы можете хранить его в DateTime следующим образом:
DateTime expDate = new DateTime(ExpYear, ExpMonth, 1).AddMonths(1).AddDays(-1);
Если это дата истечения срока действия кредитной карты, убедитесь, что день - последний день месяца, или не сравнивайте день. Могут быть некоторые расхождения по поводу того, истек или нет срок действия последнего дня. Он должен быть еще действительным, поэтому убедитесь, что текущая дата по крайней мере на день больше.
. необходимо сохранить это значение либо как nvarchar
, где вы сможете делать все, что захотите, либо как datetime
. Разница в том, что формат datetime
требует, чтобы вы указали день , а время было установлено на полночь . Здесь следует учитывать значение 1 для первого дня месяца.