Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

เมธอด DateTimeOffset.AddMonths ใน C# พร้อมตัวอย่าง


บทนำ

เมธอด DateTimeOffset.AddMonths() ใน C# ใช้เพิ่มจำนวนเดือนที่ระบุเข้าไปในค่าของอินสแตนซ์นี้ หากต้องการลบเดือน ให้ระบุค่าลบ จะจัดการวันที่สิ้นเดือนอัตโนมัติ (เช่น 31 มกราคม + 1 เดือน = 28/29 กุมภาพันธ์)

ไวยากรณ์ (Syntax)

public DateTimeOffset AddMonths (int val);

โดยที่ val คือจำนวนเดือนที่จะบวก (จำนวนเต็ม)

ตัวอย่างที่ 1: เพิ่ม 3 เดือน

using System;

public class Demo 
{
    public static void Main()
    {
        DateTimeOffset dateTimeOffset = new DateTimeOffset(2019, 08, 10, 4, 20, 10, new TimeSpan(-5, 0, 0));
        Console.WriteLine("DateTimeOffset (before adding months) = {0}", dateTimeOffset);
        
        DateTimeOffset res = dateTimeOffset.AddMonths(3);
        Console.WriteLine("DateTimeOffset (after adding months) = {0}", res);
    }
}

ผลลัพธ์

DateTimeOffset (before adding months) = 8/10/2019 4:20:10 AM -05:00
DateTimeOffset (after adding months) = 11/10/2019 4:20:10 AM -05:00

ตัวอย่างที่ 2: ลบ 5 เดือน

using System;

public class Demo 
{
    public static void Main()
    {
        DateTimeOffset dateTimeOffset = new DateTimeOffset(2019, 08, 10, 4, 20, 10, new TimeSpan(-5, 0, 0));
        Console.WriteLine("DateTimeOffset (before subtracting months) = {0}", dateTimeOffset);
        
        DateTimeOffset res = dateTimeOffset.AddMonths(-5);
        Console.WriteLine("DateTimeOffset (after subtracting months) = {0}", res);
    }
}

ผลลัพธ์

DateTimeOffset (before subtracting months) = 8/10/2019 4:20:10 AM -05:00
DateTimeOffset (after subtracting months) = 3/10/2019 4:20:10 AM -05:00

สรุป

เมธอด AddMonths() จัดการวันที่สิ้นเดือนและปีอธิกสุรทินอัตโนมัติ คืนอินสแตนซ์ใหม่ offset คงที่ เหมาะสำหรับการคำนวณวันครบรอบ การเรียกเก็บเงินรายเดือน หรือการกำหนดนัดหมายซ้ำรายเดือน