KoreanHolidays
v0.1.0Latest Stable
net10.0net8.0net9.0
๋ํ๋ฏผ๊ตญ ๊ณตํด์ผ(๋์ฒด๊ณตํด์ผ ํฌํจ) ์กฐํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ. ์ฐ์ฃผํญ๊ณต์ฒญ ์๋ ฅ์ํญ ๊ธฐ๋ฐ, ๋ฐํ์ ์์กด์ฑ ์์.
Published
Jun 19, 2026
4mo ago
Total Downloads
131
131
Install
dotnet add package KoreanHolidays --version 0.1.0
| Product | Versions |
|---|---|
| .NET |
README
KoreanHolidays
๋ํ๋ฏผ๊ตญ ๊ณตํด์ผ(๋์ฒด๊ณตํด์ผ ํฌํจ)์ ๋ฐํ์ ์์กด์ฑ ์์ด ์กฐํํ๋ .NET ๋ผ์ด๋ธ๋ฌ๋ฆฌ. net8.0 / net9.0 / net10.0 ๋ฉํฐํ๊น, ์ธ๋ถ ์์กด์ฑ ์์(BCL only).
๋ฐ์ดํฐ ์ถ์ฒ: hyunbinseo/holidays-kr โ ์ฐ์ฃผํญ๊ณต์ฒญ ๋ฐํ ์๋ ฅ์ํญ ๊ธฐ๋ฐ.
API ์์ฝ
| ๋ฉค๋ฒ | ์ค๋ช |
|---|---|
IsPublicHoliday(DateOnly) |
๊ณตํด์ผ ์ฌ๋ถ (๋ฏธ์ง์ ์ฐ๋ โ ArgumentOutOfRangeException) |
GetHolidays(DateOnly) |
ํด๋น ๋ ์ง์ ๊ณตํด์ผ ๋ชฉ๋ก (์์ผ๋ฉด ๋น ๋ฆฌ์คํธ) |
TryGetHolidays(DateOnly, out โฆ) |
์์ธ ์์ด ๋ถ๊ธฐ โ ๋ฏธ์ง์ ์ฐ๋/๋น๊ณตํด์ผ์ด๋ฉด false |
GetHolidays(int year) |
์ฐ๋ ์ ์ฒด ๊ณตํด์ผ (๋ ์ง ์ค๋ฆ์ฐจ์) |
GetHolidaysInRange(DateOnly, DateOnly) |
๊ธฐ๊ฐ(์๋ ํฌํจ) ๊ณตํด์ผ (๋ ์ง ์ค๋ฆ์ฐจ์) |
MinYear / MaxYear / IsSupportedYear(int) |
์ง์ ๋ฒ์ (ํ์ฌ 2018~2026) |
์ค์น
dotnet add package KoreanHolidays
์ฌ์ฉ
using System;
using System.Linq;
using KoreanHolidays;
// ๊ณตํด์ผ ์ฌ๋ถ
KHolidays.IsPublicHoliday(new DateOnly(2026, 1, 1)); // true
KHolidays.IsPublicHoliday(new DateOnly(2026, 1, 2)); // false
// ๊ณตํด์ผ ๋ช
์นญ๋ค (๊ฐ์ ๋ ๋ณต์ ๊ฐ๋ฅ)
KHolidays.GetHolidays(new DateOnly(2025, 5, 5))
.Select(h => h.Name); // ["์ด๋ฆฐ์ด๋ ", "๋ถ์ฒ๋ ์ค์ ๋ "]
// ๋์ฒด๊ณตํด์ผ ์ ๋ณด
var sub = KHolidays.GetHolidays(new DateOnly(2026, 8, 17)).Single();
sub.IsSubstitute; // true
sub.SubstituteFor; // "๊ด๋ณต์ "
// ์์ธ ์์ด ๋ถ๊ธฐ (Try ํจํด)
if (KHolidays.TryGetHolidays(new DateOnly(2026, 1, 1), out var holidays)) { /* ... */ }
// ์ฐ๋ / ๊ธฐ๊ฐ ์กฐํ
KHolidays.GetHolidays(2026);
KHolidays.GetHolidaysInRange(new DateOnly(2026, 1, 1), new DateOnly(2026, 12, 31));
// ์ง์ ๋ฒ์
KHolidays.MinYear; // 2018
KHolidays.MaxYear; // 2026
KHolidays.IsSupportedYear(2030); // false
๋์ ์ ์ฑ
- ์
๋ ฅ์ ์๊ฐ๋ ์๋
DateOnly๋ก ๋ฐ๋๋ค.DateTime์์ ๋ณํ:DateOnly.FromDateTime(kstDateTime). - ๋ฐ์ดํฐ ๋ฒ์ ๋ฐ ์ฐ๋๋ "๊ณตํด์ผ ์์"์ด ์๋๋ผ "์ ์ ์์"์ผ๋ก ์ทจ๊ธํ๋ค.
๋จ์ API(
IsPublicHoliday,GetHolidays)๋ArgumentOutOfRangeException์ ๋์ง๊ณ ,TryGetHolidays๋false๋ฅผ ๋ฐํํ๋ค. - 2026๋ ๋ถํฐ ๋ ธ๋์ (5์ 1์ผ)๊ณผ ์ ํ์ (7์ 17์ผ)์ด ๋ฒ์ ๊ณตํด์ผ๋ก ํฌํจ๋๋ค (2025๋ ๊ณตํด์ผ๋ฒ ๊ฐ์ ๋ฐ์).
๋ฐ์ดํฐ ๊ฐฑ์
์๋ณธ ๋ฆฌํฌ์ ์ ์ฐ๋๊ฐ ์ถ๊ฐ๋๋ฉด:
# tools/HolidayData.Generator/data/ ์ ์ YYYY.json ์ถ๊ฐ ํ
dotnet run --project tools/HolidayData.Generator -- src/KoreanHolidays/Generated/HolidayData.g.cs
๋ผ์ด์ ์ค
MIT
Adoption Assessment
Assess this package against its supported frameworks, license, maintenance signals and dependency graph before making it a project standard.
Compatibility metadata lists 3 target frameworks; confirm the exact target used by your application.
Related Guides & Workflows
Learn how to evaluate, integrate, or audit this package in your .NET project.