برای شروع من کلاسی رو معرفی میکنم که مشکل تعداد زیادی از برنامه نویسان در مورد تاریخ شمسی رو حل میکنه. در دات نت کلاسی به نام PersianCleander وجود داره که به وسیله ی آن میتوانیم تاریخ شمسی رو محاسبه کنیم. بدین صورت :
کد:
Imports System.Globalization
Public Class ConvertDate
Public Function ShamsiToMiladi(ByVal ShamsiDate As String) As String
Dim PDate As New PersianCalendar
Dim y, m, d As Integer
y = Mid(ShamsiDate, 1, 4)
m = Mid(ShamsiDate, 6, 2)
d = Mid(ShamsiDate, 9, 2)
Return Mid(PDate.ToDateTime(y, m, d, 1, 1, 1, 1, 1), 1, 11)
End Function
Public Function MiladiToShamsi(ByVal MiladiDate As String) As String
Dim PDate As New PersianCalendar
Dim miladi As Date = CDate(MiladiDate)
Dim y, m, d As String
y = PDate.GetYear(miladi)
m = PDate.GetMonth(miladi)
d = PDate.GetDayOfMonth(miladi)
Return y & "/" & m & "/" & d
End Function
End Class