Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将Jalali月添加到Jalali日期_C#_.net_Datetime_Calendar_Persian - Fatal编程技术网

C# 将Jalali月添加到Jalali日期

C# 将Jalali月添加到Jalali日期,c#,.net,datetime,calendar,persian,C#,.net,Datetime,Calendar,Persian,我在Jalali(波斯日期系统)中有一个日期,我需要在一个月内转发。问题是,当我使用myDateTime.AddMonths(1)添加1个月时,我的日期向前移动1个公历月,而我想要一个Jalali月 例如,如果我的日期(格式:yyyy-MM-dd)是2013-02-28格里高利和1391/12/10Jalali,我加上一个月,它将是2013-03-28格里高利(没问题)和1392/01/08(这是错误的,应该是1392/01/10) 讲完上述所有故事后,有没有一种方法可以根据我的文化、地区或其他

我在Jalali(波斯日期系统)中有一个日期,我需要在一个月内转发。问题是,当我使用
myDateTime.AddMonths(1)
添加1个月时,我的日期向前移动1个公历月,而我想要一个Jalali月

例如,如果我的日期(格式:yyyy-MM-dd)是2013-02-28格里高利和1391/12/10Jalali,我加上一个月,它将是2013-03-28格里高利(没问题)和1392/01/08(这是错误的,应该是1392/01/10)


讲完上述所有故事后,有没有一种方法可以根据我的文化、地区或其他情况在日期上增加一个月?

您可以使用
System.Globalization.PersianCalendar
实例方法(其行为类似于静态方法),如下所示:


不幸的是,对Jalali日历的支持很弱,特别是MS产品中的GUI组件。
var persianCalendar = new System.Globalization.PersianCalendar();
var today = DateTime.Today;
var nextMonth = persianCalendar.AddMonths(today, 1);