在我的wpf应用中,我正在使用datepicker控件选择日期,如下所示:
<DatePicker Name="dtpSales" Grid.Row="3" SelectedDate="{Binding SalesDate, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, TargetNullValue ={x:Static System:DateTime.Now}}" Width="200" Height="24" HorizontalAlignment="Left" Margin="147,7,0,5" BorderBrush="Black" Grid.ColumnSpan="2" />
我可以将日期保存为mm-dd-yyyy格式。我如何以25-05-2019格式保存它?绑定的SalesDate是DateTime数据类型。
已编辑:我有一个日期对象,值为12-02-2019(dd-MM-yyyy),并将其保存为sql server表为2019-12-02(yyyy-dd-MM)。当我从数据库中检索日期时,该日期的值将为02-12-2019(MM-dd-yyyy)。现在我想在该日期之前再加上4个月。
int salesid = (int)dr["SalesID"]; // dr is the datarow
DateTime salesdate = (DateTime)dr["SalesDate"];
string sdate = salesdate.AddMonths(4).ToString("dd-MM-yyyy");
DateTime servicedate = Convert.ToDateTime(sdate); // 2020-12-02
当我在02-12-2019上增加4个月时,它将变成2020-12-02 ??? 当我在2019年12月12日添加仅4个月时,我无法获得正确的日期。
答案 0 :(得分:0)
已编辑:从注释看来,您的数据库已经在返回DateTime对象。以下内容就足够了:
int salesid = (int)dr["SalesID"]; // dr is the datarow
DateTime salesdate = (DateTime)dr["SalesDate"];
DateTime servicedate = salesdate.AddMonths(4); // 2020-12-02
(感谢Chris Dunaway提出改进建议)