Popularity
1.3
Growing
Activity
7.1
-
23
2
2

Description

A dotnet based tool for persian language

Programming language: C#
License: MIT License
Tags: API     MVC     Calendar     AspNetCore     Dotnetcore     Persian     Iran    
Latest version: v1.1.2

ابزار Persian Tools alternatives and similar packages

Based on the "API" category.
Alternatively, view ابزار Persian Tools alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of ابزار Persian Tools or a related project?

Add another 'API' Package

README

ابزار Persian Tools ابزاری برای برنامه نویسان دات نت که که فیچرهای زیادی را برای شما فراهم می کند که در ادامه آنها را شرح خواهیم داد.

چگونه آنرا نصب کنیم؟

Nuget Package Manager

Install-Package PersianTools.Core

.NET CLI

dotnet add package PersianTools.Core

امکانات و ویژگی ها

  • [نوع جدید تاریخ شمسی](#نوع-جدید-تاریخ-شمسی)
  • [تبدیل اعداد به حروف](#)
  • [لیست شهرها و استان های ایران](#)
  • [اعتبار سنجش کد ملی](#)
  • [اعتبار سنجش شماره کارت بانکی](#)
  • [اعتبار سنجش شماره شبا](#)
  • [موقعیت مکانی شماره تلفن، موبایل و کدپستی](#)

نوع جدید تاریخ شمسی

پس از نصب این پکیج نوع جدیدی به نام PersianDateTime برای شما قابل استفاده خواهد بود که ویژگی های آن را در ادامه برای شما توضیح خواهیم داد. که با استفاده از آن میتوانید انواع تبدیل تاریخ را انجام داده و کلیه تعطیلات شمسی و قمری به همراه مناسبتهای یک تاریخ مشاهده کنید فقط نکته ای که اهمیت داره اینه که این نوع Reference Type هستش و باید در استفاده ازش به این نکته نوجه کنید

تعریف تاریخ شمسی

به یکی از روش های زیر می توانید یک تاریخ شمسی را تعریف نمایید

var persianDate1 = new PersianDateTime(1399, 10, 13); // 1
var persianDate2 = new PersianDateTime("1399/10/13"); // 2
var persianDate3 = new PersianDateTime("1399/12/29 23:30"); // 3
var persianDate4 = new PersianDateTime("1399/12/29 23:30:00"); // 4
var persianDate5 = new PersianDateTime(1399, 12, 29, 23, 30, 10); // 5
var persianDate6 = new PersianDateTime(DateTime.Now); // 6

مناسبت های یک تاریخ خاص

Example 1:

var dt1 = new PersianDateTime("1401/02/13").GetDateInformation)();

Output: 
[
  {
    "id": "61-10-02",
    "description": "تعطیل به مناسبت عید سعید فطر",
    "calenderType": 2,
    "dateType": 3,
    "isHoliDay": true,
    "calenderTypeDesc": "قمری",
    "dateTypeDesc": "تعطیل رسمی"
  }
]

Example2

var dt1 = new PersianDateTime("1401/02/15").GetDateInformation)();

Output: 
[
  {
    "id": "1-02-15",
    "description": "روز بزرگداشت شیخ صدوق",
    "calenderType": 1,
    "dateType": 4,
    "isHoliDay": false,
    "calenderTypeDesc": "شمسی",
    "dateTypeDesc": "مناسبت ملی"
  },
  {
    "id": "1-02-15",
    "description": "جشن میانه بهار ، جشن بهاربد",
    "calenderType": 1,
    "dateType": 4,
    "isHoliDay": false,
    "calenderTypeDesc": "شمسی",
    "dateTypeDesc": "مناسبت ملی"
  },
  {
    "id": "1-02-15",
    "description": "روز شیراز",
    "calenderType": 1,
    "dateType": 4,
    "isHoliDay": false,
    "calenderTypeDesc": "شمسی",
    "dateTypeDesc": "مناسبت ملی"
  },
  {
    "id": "1-05-05",
    "description": "روز جهانی ماما",
    "calenderType": 3,
    "dateType": 5,
    "isHoliDay": false,
    "calenderTypeDesc": "میلادی",
    "dateTypeDesc": "مناسبت بین المللی"
  }
]

فاصله دو تاریخ شمسی

var dt1 = new PersianDateTime("1399/12/29");
var dt2 = new PersianDateTime("1399/11/29");
Convert.ToInt32(PersianDateTime.DateDifference(dt1,dt2));

Output: 30

ابتدا روز و انتهای روز

var dt1 = PersianDateTime.StartOfDay( new PersianDateTime("1399/12/29 23:30:20"));

Output:
1399/12/29 00:00:00

var dt1 = PersianDateTime.EndOfDay(new PersianDateTime("1399/12/29 23:30:20"));

Output:
1399/12/29 23:59:59

آخرین روز سال

var d1 = PersianDateTime.EndOfYearPersianDateTime(1397);

Output:
1397/12/29

var d2 = PersianDateTime.EndOfYearPersianDateTime(1399);

Output:
1399/12/30

آخرین روز ماه

var d1 = PersianDateTime.EndDateOfMonth(1397);

Output:
1397/12/29

var d2 = PersianDateTime.EndDateOfMonth(1399);

Output:
1399/12/30

تعداد روزهای کاری در یک بازه تاریخی

var d1 = new PersianDateTime(1397, 8, 1);
var d2 = new PersianDateTime(1397, 8, 30);
PersianDateTime.GetWorkingDays(d1,d2);

Output:
20

تعداد روزهای تعطیل پشت سرهم در یک سال

ورودی اول این تابع سال شمسی و ورودی دوم تعداد روز می باشد و خروجی آن یک لیست از تاریخ های پشت سر هم که تعطیل می باشد

var result = PersianDateExtensions.GetContinuousHolidays(year, 3);

Output:
[Item1: 1400/03/13 - 1400/03/16, Item2: ...]

در حال تکمیل...