vahidn / dntpersianutils.core Goto Github PK
View Code? Open in Web Editor NEWDNTPersianUtils.Core is a collection of Persian helper extension methods
License: Apache License 2.0
DNTPersianUtils.Core is a collection of Persian helper extension methods
License: Apache License 2.0
DateTime With Format : "00-01-03" converted to "1921-03-23"
I have an issue when i define validation like this
[Display(Name = "شماره همراه سرپرست")]
[ValidIranianMobileNumber(ErrorMessage = "{0} وارد شده صحیح نمی باشد!")]
public string SupervisorPhoneNumber { get; set; }
this property is not required and I want when user entered anything, this validator start to work and otherwise ignore to check.
ZoneInfo in macOs is "Iran"
آیا این کتابخانه قابلیت تشخیص تعطیلات ناگهانی هم داره ؟ مثلا امروز آیت الله صافی گلپایگانی به رحمت خدا بره و دولت 2 روز تعطیلی اعلام کنه ؟
یا مثلا امروز کرونا شیوع پیدا کنه ، ناگهانی اعلام کنن فردا همه ی ادارات دنیا تعطیه ؟
DNTPersianUtils.Core version:
.NET Core SDK version:
IDE:
paste your core code
Exception message:
Full Stack trace:
یک پروژه با Net 8 به همراه فریم ورک DNTPersianUtils انجام شده است و برای یک مشتری پس از تبدیل تاریخ به شمسی تاریخ همچنان میلادی خروجی داده می شود و من نتوانستم مشکل را پیدا و حل کنم. ممنون می شوم راهنمایی نمایید.
نوع داده datetime می باشد.
ویندوز 2019 و 2022 برای همان مجموعه مشتری تست شد. و مشکل یکسان بود.
زمانی که fromDocDate.ToUniversalTime() و پس از ان تبدیل صورت میگیرد . خروجی شمسی می شود اما تاریخ ها اشتباه است.
Hi Sir VahidN
We installed DNTPersianUtils.Core by nuget in VS2015.
But your persian extension methods not shows in vs intellicense.
اگر امکان داره خروجی به فرمت "نیاز به خروجی تاریخ با فرمت "۱۰ فروردین ۱۳۹۶-۱۷:۳۰" رو هم به پروژه اضافه کنید.
با تشکر
درصورتیکه بخواهیم در متد
.ToFriendlyPersianDateTextify()
تاریخ دقیق درج نشود بطور مثال در خروجی
۱۰ روز قبل، سه شنبه ۲۱ دی ۱۳۹۵، ساعت ۱۰:۲۰
مقدار
سه شنبه ۲۱ دی ۱۳۹۵
نشان داده نشود و خروجی به شکل
۱۰ روز قبل، ساعت ۱۰:۲۰
در اکستنشن متد مورد نظر هیچ آرگومانی برای اینکار وجود ندارد
DNTPersianUtils.Core version:
paste your core code
Exception message: Method not found: 'System.String DNTPersianUtils.Core.PersianDateTimeUtils.ToLongPersianDateTimeString(System.DateTime)
من با استفاده از متد زیر، میخوام سال خاتمه تعریف مناسبت ها در این کتابخانه رو بدونم، با وجود اینکه مناسبت های سال 1401 تعریف شده ولی این متد همچنان سال 1400 رو برمیگردونه.
IranHolidays.EndYear
1400
با توجه به جابه جایی تعطیلی عید فطر از 12 اردیبهشت به 13 اردیبهشت نیاز است، سایر مناسبت های قمری سال 1401 نیز تغییر کند.
سلام
من این نسخه رو پورت کردم برای دات نت 4.7.2
مشکلی نداره در github خودم پابلیشش کنم؟
Hi
When I use this repo on my project or use your IdentityCore project on macOs or Docker I have this error :
fail: Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware[0] An unhandled exception has occurred: The type initializer for 'DNTPersianUtils.Core.DateTimeUtils' threw an exception. System.TypeInitializationException: The type initializer for 'DNTPersianUtils.Core.DateTimeUtils' threw an exception. ---> System.InvalidOperationException: Sequence contains no matching element at System.Linq.Enumerable.First[TSource](IEnumerable
1 source, Func2 predicate) at DNTPersianUtils.Core.DateTimeUtils..cctor() --- End of inner exception stack trace --- at DNTPersianUtils.Core.DateTimeUtils.GetDateTimeOffsetPart(DateTimeOffset dateTimeOffset, DateTimeOffsetPart dataDateTimeOffsetPart) at AspNetCore._Views_SystemLog_Index_cshtml.<ExecuteAsync>d__53.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Microsoft.AspNetCore.Mvc.Razor.RazorView.<RenderPageAsync>d__14.MoveNext()
با سلام و خسته نباشی
تشکر از این ابزار مفیدت واقعا کا راه اندازه
جسارتن میخواستم بدونم لیست تعطیلات رسمی آپدیت شده برا سال 99 یا خیر.
سپاسگزارم
خسته نباشی وحید جان
لطفا قابلیت گرفتن روز هفته به صورت جدا را اضافه کن
از وقتی که برای نوشتن این پکیج گزاشتی ممنونم
روز خوبی داشته باشی
GetPersianWeekStartAndEndDates return previous week's start date instead of current week for Saturday. Offset calculation in GetPersianWeekStartAndEndDates should be changed like below:
var offset = -1 * (7 + ((dateTime.DayOfWeek - firstDayOfWeek) % 7));
To
var offset = -1 * ((7 + (dateTime.DayOfWeek - firstDayOfWeek)) % 7);
[TestMethod]
public void Test_GetPersianWeekStartAndEndDates_For_Dates_Works_Saturday()
{
var persianCalendar = new PersianCalendar();
var date = new DateTime(1398, 5, 12, persianCalendar);
var persianWeek = date.GetPersianWeekStartAndEndDates();
Assert.AreEqual(expected: new DateTime(1398, 5, 12, persianCalendar), actual: persianWeek.StartDate);
Assert.AreEqual(expected: new DateTime(1398, 5, 18, 23, 59, 59, persianCalendar), actual: persianWeek.EndDate);
}
سلام لطفا مناسبت ها رو هم اضافه کنید
باسلام
تابع بررسی کد پستی عملکرد درستی نداره
IsValidIranianPostalCode
DNTPersianUtils.Core version:
.NET Core SDK version: 3.1
IDE: Visual Studio
paste your core code
Exception message:
Full Stack trace:
I Have DateTime type and It type has English DateTime. I would like to use ToFriendlyPersianDateTextify but I don't want to return time. just return like ۱۰ روز قبل، سه شنبه ۲۱ دی ۱۳۹۵
How can I use it?
الان که همه ی سیستم ها به اینترنت متصل هستند پیشنهاد میکنم ارتباط با ای پی آي های تقویم رو هم در این سورس خوب پیاده سازی کنید
خودم از این سرویس زیاد استفاده میکنم
DNTPersianUtils.Core version:
.NET Core SDK version:
IDE:
paste your core code
Exception message:
Full Stack trace:
آیا امکان اضافه کردن نام بانک در خروجی اعتبارسنجی های شماره شبا و شماره کارت مثل متد IsValidIranShetabNumber وجود دارد؟
سلام
ظاهرا
ToPersianNumbers()
توی دات نت کر نسخهی ۳ کار نمیکنه و احتمالا تغییراتی توی
CultureInfo.InvariantCulture
اعمال شده که باعث میشه درست کار نکنه
MyNumber.ToPersianNumbers();
هنگام انتشار اپلیکیشن از طریق iis publish profile در ویژوال استودیو ددقیقا زمانی ارور تایم اوت کانکشن ممیده که نوبت به انتشار فایل dll پکیج DNTPersianUtilsCore.ddl میشه
Release
DNTPersianUtils.Core version:
5.7.1
.NET Core SDK version:
6.0
IDE:
VisualStudio 2022
paste your core code
C:\Program Files\dotnet\sdk\7.0.203\Sdks\Microsoft.NET.Sdk.Publish\targets\PublishTargets\Microsoft.NET.Sdk.Publish.MSDeploy.targets(140,5): Warning : Retrying the sync because a socket error (10054) occurred.
Exception message:
Full Stack trace:
سلام لطفا تاریخ دقیق قمری رو هم اضافه کنید
در راستای تکمیل این کتابخانه درخواست مبنی بر اینکه بتوان متدی اضافه شود که تاریخی را دریافت کرده اولین روز هفته و اخرین روز هفته تاریخ مد نظر را در خروجی تحویل داده و همچنین متد دیگری برای اولین روز و اخرین روز ماه با تشکر
Would you add a method to convert a string to SEO friendly text?
e.g :
"چگونه میتوان ریسکهای معامله را کاهش داد؟"
to
"چگونه-میتوان-ریسکهای-معامله-را-کاهش-داد"
مناسبت های سال 98 درست نیستن.
مثلا تاریخ 1398/03/06 شهادت امام علی است. در صورتی که در پکیج یک روز قبل تر ثبت شده
سلام مهندس، ممنونم از این کار خوبت که واقعا کار برنامه نویسارو تو ایران کم کردی، خدا خیرت بده و هر رو موفق تر از دیروز پیش بری.
اعتبار سنجی کدملی، موبایل و کد پستی درست کرا نمیکنه و به موارد درست رو اشتباه در نظر میگیره عزیزم، این مورد مهمی هست مخصوصا هنگام دریافت این 3 مورد برای اعتبار سنجی ثانویه
DNTPersianUtils.Core version: 5.4.4
.NET Core SDK version: .net core 6
IDE: vs 2022
paste your core code
Exception message:
Full Stack trace:
با توجه به اینکه در دایکیومنت ذکر شده تعطیلات رسمی تا پایان سال 1401 ساپورت میشود لطفا آن را مطابق با سال جاری آپدیت بفرمایید.
DNTPersianUtils.Core version:
.NET Core SDK version:
IDE:
paste your core code
Exception message:
Full Stack trace:
با سلام
به چه شکل میتوان لیست استان ها رو دریافت کرد و یا لیست شهرستان های یک استان را به شکل یک لیست دریافت نمود.
با تشکر
بررسی شماره شبا و شماره کارت و... برای اعداد فارسی کار نمی کنه.
I tried to use the ContainsOnlyFarsiLetters
method to check if the user's name is completely Farsi
but I find out that when the string contains whitespaces, this method just returns false
(actually it does its job correctly).
I thought about expanding this method by adding an optional parameter to ignore whitespaces or not.
Thank you.
پس از ارتقا به نگارش 4.9
ToPersianYearMonthDay
دچار خطا شده است.
The call is ambiguous between the following methods or properties: 'GenericsPersianDateTimeUtils.ToPersianYearMonthDay<TValue>(TValue?, bool, DateTimeOffsetPart)' and 'PersianDateTimeUtils.ToPersianYearMonthDay(DateTime, bool)'
و حتما باید پارامتر
convertToIranTimeZone
پاس داده شود تا خطا رفع شود.
DNTPersianUtils.Core version: 4.9.0
.NET Core SDK version: 5.0.8
IDE: 16.10.3
نمونه کد زیر رو که ران میکنم بنظرم درست عمل نمیکنه. انتظارم اینه که تبدیل انجام بشه و با فرمت مناسب نمایش داده بشه. یعنی در هر دو حالت مقداری که برمیگرده بشه 1402/05/31 11:51
ولی اینظوری نیست. ممنون میشم بررسی بفرمایید.
DNTPersianUtils.Core version: 5.7.1
.NET Core SDK version: 6.0.413
using DNTPersianUtils.Core;
var dt = DateTimeOffset.Now;
Console.WriteLine(dt);
Console.WriteLine(dt.ToShortPersianDateTimeString());
var dtu = DateTimeOffset.UtcNow;
Console.WriteLine(dtu);
Console.WriteLine(dtu.ToShortPersianDateTimeString());
8/22/2023 11:51:53AM +03:30
1402/05/31 10:21
8/22/2023 8:21:53AM +00:00
1402/05/31 10:21
Validating 123456789
string with IsValidIranianNationalCode
returns true
!
If input string length is not equal with 10 then you pad string from left with 0
to make string length 10 and it cause unexpected behavior in my option. If user intentionally enters 123456789
to avoid enter actual national code (hence it's common input) then validation will passed.
DNTPersianUtils.Core version: 8
.NET Core SDK version: 8
IDE: visual studio 17.3
paste your core code
CurrentTimePersianString = DateTime.Now.ToPersianDateTextify(),
CurrentTimePersianFreindlyString = DateTime.Now.ToFriendlyPersianDateTextify(),
Exception message:
Full Stack trace:
سلام
چطور میشه در دات نت کر متد های ApplyCorrectYeKe یا ToEnglishNumbers و به صورت فیلتر استفاده کرد که به طور خودکار روی تمام ورودی ها اعمال شود ؟
DNTPersianUtils.Core version: 5.9
.NET Core SDK version: .Net Core 8.0.2
IDE:
نمونه شماره اشتباه که از متد رد میشه
09090909090
09180918019
Method ToShortPersianDateTimeString()
doesn't covert DateTime
to local time although I pass true in method parameter.
I'm currently using it in mapping profiles.
DNTPersianUtils.Core version: 4.3.0
.NET Core SDK version: 5.0.300
IDE: Jetbrains Rider
Expected code to work:
CreateMap<ReportDescription, DescriptionSaveDto>()
.ForMember(x => x.DescriptionDatetime, opt => opt.MapFrom(y => y.DescriptionDate.DateTime.ToShortPersianDateTimeString(true)));
Current workaround (manually convert the DateTime to LocalTime using ToLocalTime()
, then call ToShortPersianDateTimeString()
method:
CreateMap<ReportDescription, DescriptionSaveDto>()
.ForMember(x => x.DescriptionDatetime, opt => opt.MapFrom(y => y.DescriptionDate.DateTime.ToLocalTime().ToShortPersianDateTimeString(true)));
Current behavior:
DescriptionDate
in database: 2021-06-27 05:33:47.826278
DescriptionDatetime
return value in Dto: 1400/04/06 05:33
Expected behavior:
DescriptionDatetime
return value in Dto: 1400/04/06 10:03
کلمات "عیدنوروز" و "ولادت حضرت قائم (عج لا...)" غلط املایی هستند
هنگامی که نمونه فایل دیسک بیمه تامین اجتماعی را به فونت فارسی تبدیل میکنیم خروجی درستی داریم. اما زمانی که همان متن تبدیل شده را به یونی کد تبدیل میکنیم در بعضی کارکرتها دچار مشکل میشود و برگردان یونی کد ساخاه شده توسط همین به پکیج به فارسی درست نمیباشد
مشکل این است که در هنگام تبدیل یونی کد به ایران سیستم تابع FromUnicodeToIranSystem پارامتر دومی قبول میکند که در آن ArbicContext قرار میگیرد و ترجمه درست انجام میشود.
اما در تبدیل ایران سیستم به یونی کد FromIranSystemToUnicode این پارامتر دوم موجود نیست
An expression tree may not contain a call or invocation that uses optional arguments
MVC
DNTPersianUtils.Core version:
.NET Core SDK version: 8
IDE: Visual Studio
paste your core code
Foo.Select(i => new{
i.Id,
i.Name,
i.CreatedDate,
CreatedDateFa = i.CreatedDate.ToFriendlyPersianDateTextify()
});
I have a solution that requires some coding like
private static string ToPersianFirendly(DateTime dt)
{
return dt.ToFriendlyPersianDateTextify();
}
and then use it in anonymous object:
Foo.Select(i =>new {
CreatedDateFa = ToPersianFirendly(i.CreatedDate)
})
## Output:
Exception message:
Full Stack trace:
Severity Code Description Project File Line Suppression State
Error CS0854 An expression tree may not contain a call or invocation that uses optional arguments
با سلام و احترام
بنظر میرسه در تابع ToFriendlyPersianDateTextify تایم زون ایران با مقدار +04:30 تبدیل میشه
مثلا ساعت ورودی 12:37:01 PM
13:37 ولی مقدار خروجی
نمایش داده میشه
DNTPersianUtils.Core version:
.NET Core SDK version:
IDE:
var outP=DateTimeReceived.ToFriendlyPersianDateTextify();
DateTimeReceived= Sunday, April 9, 2023 12:37:01 PM
outP= ۱۵ روز قبل، یکشنبه ۲۰ فروردین ۱۴۰۲، ساعت ۱۳:۳۷
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.