Developing applications for the Persian (Jalali) calendar in the early days of .NET was a notorious challenge. While modern .NET versions include native support via the PersianCalendar class, developers working with the legacy .NET Framework 2.0 runtime had to rely on custom libraries, clever workarounds, and third-party tools to handle date conversions, formatting, and UI controls.
Here are the top 5 Persian date tools and libraries that saved the day for .NET 2.0 developers. 1. FarsiLibrary
FarsiLibrary is arguably the most famous open-source project for handling Persian dates and culture in the .NET 2.0 era. Created by Mohammad Dayyan and actively maintained during the WinForms and WPF heyday, it provided a complete suite of localized controls.
Core Features: It included a PersianDatePicker, PersianMonthView, and custom culture providers.
Why it mattered: It didn’t just convert dates; it provided the actual user interface elements that looked and behaved like the standard Windows calendar but natively supported Jalali years, months, and days. Best for: Windows Forms and early WPF desktop applications.
2. Standard System.Globalization.PersianCalendar (with Custom Formatting wrappers)
Microsoft actually introduced the PersianCalendar class in .NET 2.0 inside the System.Globalization namespace. However, it had a massive limitation: .NET 2.0 did not natively support the Persian culture (fa-IR) for date formatting strings.
Core Features: Provided accurate mathematical conversions between Gregorian and Jalali dates.
Why it mattered: It was built directly into the runtime, meaning zero external dependencies. Developers wrote custom extension methods or wrapper classes to format the output string (e.g., converting 1385/05/10 to text), bypassing the lack of native fa-IR string formatting.
Best for: Lightweight backend logic where third-party DLLs were prohibited. 3. Kabsh Persian Date (PersianDate DLL)
During the .NET 2.0 lifecycle, several standalone utility DLLs floated around the Iranian developer community, with “Kabsh” or standard PersianDate packages being highly popular on platforms like Barnamenevis.org.
Core Features: A lightweight, single-file DLL focused entirely on speed and ease of use.
Why it mattered: Unlike the complex setup of FarsiLibrary, this tool allowed developers to simply write PersianDate.Now or PersianDate.ConvertToPersian(DateTime.Now) to get immediate results without dealing with globalization objects.
Best for: Quick web forms (ASP.NET 2.0) and console applications. 4. BehComponent (BehDataAccess)
BehComponent was a widely used Iranian commercial and freeware UI component suite tailored for .NET 2.0 and Visual Studio ⁄2008.
Core Features: Offered highly customizable, skinned Persian date pickers, digital clocks, and data grid columns that supported Jalali dates natively.
Why it mattered: It focused heavily on the visual aesthetics of Windows Forms, offering themes and smooth drop-down animations that mirrored premium western control suites like ComponentOne or DevExpress, but with native Persian localization.
Best for: Enterprise WinForms applications requiring a polished, professional UI. 5. Custom ASP.NET 2.0 AJAX Calendar Extenders
With the launch of the ASP.NET AJAX Control Toolkit for .NET 2.0, web developers gained access to powerful client-side behaviors. Resourceful developers quickly hacked the JavaScript files of the standard standard CalendarExtender to support Persian date logic.
Core Features: Client-side JavaScript conversion combined with ASP.NET 2.0 backend processing.
Why it mattered: It allowed web applications to display a Persian calendar popup using pure JavaScript, reducing server round-trips and providing a seamless web experience long before modern frontend frameworks existed. Best for: ASP.NET 2.0 Web Forms websites. To advance your project, please let me know:
Are you maintaining a legacy .NET 2.0 application, or are you looking to migrate to a modern .NET version?
Do you need UI components (like a date picker calendar) or just backend code for conversions?
Leave a Reply