{"id":13415097,"url":"https://github.com/exceptionless/Exceptionless.DateTimeExtensions","last_synced_at":"2025-03-14T22:32:43.408Z","repository":{"id":22860098,"uuid":"26207748","full_name":"exceptionless/Exceptionless.DateTimeExtensions","owner":"exceptionless","description":"DateTimeRange, Business Day and various DateTime, DateTimeOffset, TimeSpan extension methods","archived":false,"fork":false,"pushed_at":"2024-07-08T23:20:24.000Z","size":254,"stargazers_count":238,"open_issues_count":6,"forks_count":27,"subscribers_count":11,"default_branch":"main","last_synced_at":"2024-09-19T01:38:56.827Z","etag":null,"topics":["business-days","c-sharp","datetime","datetimeoffset","datetimerange","exceptionless","range","time","timespan"],"latest_commit_sha":null,"homepage":"https://www.nuget.org/packages/Exceptionless.DateTimeExtensions/","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/exceptionless.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"exceptionless"}},"created_at":"2014-11-05T07:09:47.000Z","updated_at":"2024-09-10T07:09:13.000Z","dependencies_parsed_at":"2023-02-16T12:30:59.799Z","dependency_job_id":"3364730f-f67b-477a-9dba-bc71b9057fdd","html_url":"https://github.com/exceptionless/Exceptionless.DateTimeExtensions","commit_stats":{"total_commits":129,"total_committers":6,"mean_commits":21.5,"dds":0.5813953488372092,"last_synced_commit":"c0223626e3749f6c7b3ab56ec6193bd5bc3de2d2"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/exceptionless%2FExceptionless.DateTimeExtensions","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/exceptionless%2FExceptionless.DateTimeExtensions/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/exceptionless%2FExceptionless.DateTimeExtensions/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/exceptionless%2FExceptionless.DateTimeExtensions/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/exceptionless","download_url":"https://codeload.github.com/exceptionless/Exceptionless.DateTimeExtensions/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243658057,"owners_count":20326459,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["business-days","c-sharp","datetime","datetimeoffset","datetimerange","exceptionless","range","time","timespan"],"created_at":"2024-07-30T21:00:43.244Z","updated_at":"2025-03-14T22:32:42.986Z","avatar_url":"https://github.com/exceptionless.png","language":"C#","readme":"# Exceptionless.DateTimeExtensions\n[![Build status](https://github.com/Exceptionless/Exceptionless.DateTimeExtensions/workflows/Build/badge.svg)](https://github.com/Exceptionless/Exceptionless.DateTimeExtensions/actions)\n[![NuGet Version](http://img.shields.io/nuget/v/Exceptionless.DateTimeExtensions.svg?style=flat)](https://www.nuget.org/packages/Exceptionless.DateTimeExtensions/) \n[![Discord](https://img.shields.io/discord/715744504891703319)](https://discord.gg/6HxgFCx)\n[![Donate](https://img.shields.io/badge/donorbox-donate-blue.svg)](https://donorbox.org/exceptionless?recurring=true)\n\nDateTimeRange, Business Day and various DateTime, DateTimeOffset, TimeSpan extension methods.\n\n## Getting Started (Development)\n\n[This package](https://www.nuget.org/packages/Exceptionless.DateTimeExtensions/) can be installed via the [NuGet package manager](https://docs.nuget.org/consume/Package-Manager-Dialog). If you need help, please contact us via in-app support or [open an issue](https://github.com/exceptionless/Exceptionless.DateTimeExtensions/issues/new). We’re always here to help if you have any questions!\n\n1. You will need to have [Visual Studio Code](https://code.visualstudio.com/) installed.\n2. Open the root folder.\n\n## Using DateTimeExtensions\n\nBelow is a small sampling of the things you can accomplish with DateTimeExtensions, so check it out!\n\n### Business Day\n\nQuickly calculate if a datetime is within your hours of business. Check out our [unit tests](https://github.com/exceptionless/Exceptionless.DateTimeExtensions/blob/main/tests/Exceptionless.DateTimeExtensions.Tests/BusinessDayTests.cs) for more usage samples.\n\n```csharp\nvar date = DateTime.Now.StartOfDay().AddHours(8);\n\nvar day = new BusinessDay(date.Date.DayOfWeek,\n    date.Subtract(TimeSpan.FromHours(1)).TimeOfDay,\n    date.AddHours(1).TimeOfDay);\n\nbool isDay = day.IsBusinessDay(date);\n```\n\n### DateTime Ranges\n\nQuickly work with date ranges. . Check out our [unit tests](https://github.com/exceptionless/Exceptionless.DateTimeExtensions/blob/main/tests/Exceptionless.DateTimeExtensions.Tests/DateTimeRangeTests.cs) for more usage samples.\n\n```csharp\nvar range = DateTimeRange.Parse(\"yesterday\", DateTime.Now);\nif (range.Contains(DateTime.Now.Subtract(TimeSpan.FromHours(6)))) {\n  //...\n}\n```\n\n### TimeUnit\n\nQuickly work with time units. . Check out our [unit tests](https://github.com/exceptionless/Exceptionless.DateTimeExtensions/blob/main/tests/Exceptionless.DateTimeExtensions.Tests/TimeUnitTests.cs) for more usage samples.\n\n```csharp\nTimeSpan oneNanosecond = TimeUnit.Parse(\"1nanos\");\nTimeSpan oneMicrosecond = TimeUnit.Parse(\"1micros\");\nTimeSpan oneMillisecond = TimeUnit.Parse(\"1ms\");\nTimeSpan oneSecond = TimeUnit.Parse(\"1s\");\nTimeSpan oneMinute = TimeUnit.Parse(\"1m\");\nTimeSpan oneHour = TimeUnit.Parse(\"1h\");\nTimeSpan oneDay = TimeUnit.Parse(\"1d\");\n```\n\n### DateTime Extension methods\n\nHelper methods that makes working with DateTimes easier.  Check out the [source](https://github.com/exceptionless/Exceptionless.DateTimeExtensions/blob/main/src/Exceptionless.DateTimeExtensions/DateTimeExtensions.cs) for all of the extension methods you can use.\n\n```csharp\nusing Exceptionless.DateTimeExtensions;\n\nDateTime.Now.ToApproximateAgeString(); // \"Just now\"\nvar time = DateTime.Now.StartOfMinute();\nvar lastWeek = DateTime.Now.LastWeek();\nvar nextWeek = DateTime.Now.NextWeek();\n```\n\n### DateTimeOffset Extension methods\n\nHelper methods that makes working with DateTimeOffsets easier.  Check out the [source](https://github.com/exceptionless/Exceptionless.DateTimeExtensions/blob/master/src/Exceptionless.DateTimeExtensions/DateTimeOffsetExtensions.cs) for all of the extension methods you can use.\n\n```csharp\nusing Exceptionless.DateTimeExtensions;\n\nDateTimeOffset.Now.ToApproximateAgeString(); // \"Just now\"\nvar startOfMonth = DateTimeOffset.Now.ToStartOfMonth();\nvar endOfMonth = DateTimeOffset.Now.ToEndOfMonth();\n```\n\n### Timespan Extension methods\n\nHelper methods that makes working with TimeSpans easier.  Check out the [source](https://github.com/exceptionless/Exceptionless.DateTimeExtensions/blob/main/src/Exceptionless.DateTimeExtensions/TimeSpanExtensions.cs) for all of the extension methods you can use.\n\n```csharp\nusing Exceptionless.DateTimeExtensions;\n\nvar years = TimeSpan.FromHours(6).GetYears();\nvar totalYears = TimeSpan.FromHours(6).GetTotalYears();\n```\n\n## Thanks to all the people who have contributed\n\n[![contributors](https://contributors-img.web.app/image?repo=exceptionless/Exceptionless.DateTimeExtensions)](https://github.com/exceptionless/Exceptionless.DateTimeExtensions/graphs/contributors)\n","funding_links":["https://github.com/sponsors/exceptionless"],"categories":["Frameworks, Libraries and Tools","Datetime","日期","框架, 库和工具"],"sub_categories":["Date and Time","日期和时间"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fexceptionless%2FExceptionless.DateTimeExtensions","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fexceptionless%2FExceptionless.DateTimeExtensions","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fexceptionless%2FExceptionless.DateTimeExtensions/lists"}