Struct LocalDateTime
  
A date and time in a particular calendar system. A LocalDateTime value does not represent an
instant on the global time line, because it has no associated time zone: "November 12th 2009 7pm, ISO calendar"
occurred at different instants for different people around the world.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  
    Implements
    
    
    IComparable
    IFormattable
    IXmlSerializable
    ISerializable
   
  
    Inherited Members
    
      Object.Equals(Object, Object)
    
    
      Object.ReferenceEquals(Object, Object)
    
    
      Object.GetType()
    
   
  
  Assembly: NodaTime.dll
  Syntax
  
    [Serializable]
public struct LocalDateTime : IEquatable<LocalDateTime>, IComparable<LocalDateTime>, IComparable, IFormattable, IXmlSerializable, ISerializable
   
  
  
  Constructors
  
  LocalDateTime(Int32, Int32, Int32, Int32, Int32)
  
Initializes a new instance of the 
LocalDateTime struct using the ISO calendar system.
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime(int year, int month, int day, int hour, int minute)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int32 | year | The year. This is the "absolute year",
so a value of 0 means 1 BC, for example. | 
      
        | Int32 | month | The month of year. | 
      
        | Int32 | day | The day of month. | 
      
        | Int32 | hour | The hour. | 
      
        | Int32 | minute | The minute. | 
    
  
  
  Sample snippet
  
using NodaTime;
using NodaTime.Text;
using System;
LocalDateTime dt = new LocalDateTime(2010, 6, 16, 16, 20);
Console.WriteLine(LocalDateTimePattern.GeneralIso.Format(dt));
Console.WriteLine(dt.Calendar);
Output:
2010-06-16T16:20:00
ISO
 
   
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentOutOfRangeException | The parameters do not form a valid date/time. | 
    
  
  
  LocalDateTime(Int32, Int32, Int32, Int32, Int32, CalendarSystem)
  
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime(int year, int month, int day, int hour, int minute, CalendarSystem calendar)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int32 | year | The year. This is the "absolute year", so, for
the ISO calendar, a value of 0 means 1 BC, for example. | 
      
        | Int32 | month | The month of year. | 
      
        | Int32 | day | The day of month. | 
      
        | Int32 | hour | The hour. | 
      
        | Int32 | minute | The minute. | 
      
        | CalendarSystem | calendar | The calendar. | 
    
  
  
  Sample snippet
  
using NodaTime;
using System;
CalendarSystem calendar = CalendarSystem.Iso;
LocalDateTime dt = new LocalDateTime(2010, 6, 16, 16, 20, calendar);
Console.WriteLine(dt.Minute);
Output:
20
 
   
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentOutOfRangeException | The parameters do not form a valid date/time. | 
      
        | ArgumentNullException | calendar is null. | 
    
  
  
  LocalDateTime(Int32, Int32, Int32, Int32, Int32, Int32)
  
Initializes a new instance of the 
LocalDateTime struct using the ISO calendar system.
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime(int year, int month, int day, int hour, int minute, int second)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int32 | year | The year. This is the "absolute year",
so a value of 0 means 1 BC, for example. | 
      
        | Int32 | month | The month of year. | 
      
        | Int32 | day | The day of month. | 
      
        | Int32 | hour | The hour. | 
      
        | Int32 | minute | The minute. | 
      
        | Int32 | second | The second. | 
    
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentOutOfRangeException | The parameters do not form a valid date/time. | 
    
  
  
  LocalDateTime(Int32, Int32, Int32, Int32, Int32, Int32, CalendarSystem)
  
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime(int year, int month, int day, int hour, int minute, int second, CalendarSystem calendar)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int32 | year | The year. This is the "absolute year", so, for
the ISO calendar, a value of 0 means 1 BC, for example. | 
      
        | Int32 | month | The month of year. | 
      
        | Int32 | day | The day of month. | 
      
        | Int32 | hour | The hour. | 
      
        | Int32 | minute | The minute. | 
      
        | Int32 | second | The second. | 
      
        | CalendarSystem | calendar | The calendar. | 
    
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentOutOfRangeException | The parameters do not form a valid date/time. | 
      
        | ArgumentNullException | calendar is null. | 
    
  
  
  LocalDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32)
  
Initializes a new instance of the 
LocalDateTime struct using the ISO calendar system.
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int32 | year | The year. This is the "absolute year",
so a value of 0 means 1 BC, for example. | 
      
        | Int32 | month | The month of year. | 
      
        | Int32 | day | The day of month. | 
      
        | Int32 | hour | The hour. | 
      
        | Int32 | minute | The minute. | 
      
        | Int32 | second | The second. | 
      
        | Int32 | millisecond | The millisecond. | 
    
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentOutOfRangeException | The parameters do not form a valid date/time. | 
    
  
  
  LocalDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, CalendarSystem)
  
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, CalendarSystem calendar)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int32 | year | The year. This is the "absolute year", so, for
the ISO calendar, a value of 0 means 1 BC, for example. | 
      
        | Int32 | month | The month of year. | 
      
        | Int32 | day | The day of month. | 
      
        | Int32 | hour | The hour. | 
      
        | Int32 | minute | The minute. | 
      
        | Int32 | second | The second. | 
      
        | Int32 | millisecond | The millisecond. | 
      
        | CalendarSystem | calendar | The calendar. | 
    
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentOutOfRangeException | The parameters do not form a valid date/time. | 
      
        | ArgumentNullException | calendar is null. | 
    
  
  Properties
  
  Calendar
  Gets the calendar system associated with this local date and time.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public CalendarSystem Calendar { get; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | CalendarSystem | The calendar system associated with this local date and time. (The value returned is never null.) | 
    
  
  
  ClockHourOfHalfDay
  
Gets the hour of the half-day of this local date and time, in the range 1 to 12 inclusive.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public int ClockHourOfHalfDay { get; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Int32 | The hour of the half-day of this local date and time, in the range 1 to 12 inclusive. | 
    
  
  
  Date
  
Gets the date portion of this local date and time as a 
LocalDate in the same calendar system as this value.
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDate Date { get; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | LocalDate | The date portion of this local date and time as a LocalDatein the same calendar system as this value. | 
    
  
  
  Day
  
Gets the day of this local date and time within the month.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Int32 | The day of this local date and time within the month. | 
    
  
  
  DayOfWeek
  
Gets the week day of this local date and time expressed as an 
IsoDayOfWeek value.
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public IsoDayOfWeek DayOfWeek { get; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | IsoDayOfWeek | The week day of this local date and time expressed as an IsoDayOfWeek. | 
    
  
  
  DayOfYear
  
Gets the day of this local date and time within the year.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public int DayOfYear { get; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Int32 | The day of this local date and time within the year. | 
    
  
  
  Era
  Gets the era of this local date and time.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Era | The era of this local date and time. (The value returned is never null.) | 
    
  
  
  Hour
  
Gets the hour of day of this local date and time, in the range 0 to 23 inclusive.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Int32 | The hour of day of this local date and time, in the range 0 to 23 inclusive. | 
    
  
  
  Millisecond
  
Gets the millisecond of this local date and time within the second, in the range 0 to 999 inclusive.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public int Millisecond { get; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Int32 | The millisecond of this local date and time within the second, in the range 0 to 999 inclusive. | 
    
  
  
  Minute
  
Gets the minute of this local date and time, in the range 0 to 59 inclusive.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public int Minute { get; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Int32 | The minute of this local date and time, in the range 0 to 59 inclusive. | 
    
  
  
  Month
  
Gets the month of this local date and time within the year.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public int Month { get; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Int32 | The month of this local date and time within the year. | 
    
  
  
  NanosecondOfDay
  
Gets the nanosecond of this local date and time within the day, in the range 0 to 86,399,999,999,999 inclusive.
  
  
  Since 2.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public long NanosecondOfDay { get; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Int64 | The nanosecond of this local date and time within the day, in the range 0 to 86,399,999,999,999 inclusive. | 
    
  
  
  NanosecondOfSecond
  
Gets the nanosecond of this local time within the second, in the range 0 to 999,999,999 inclusive.
  
  
  Since 2.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public int NanosecondOfSecond { get; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Int32 | The nanosecond of this local time within the second, in the range 0 to 999,999,999 inclusive. | 
    
  
  
  Second
  
Gets the second of this local date and time within the minute, in the range 0 to 59 inclusive.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public int Second { get; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Int32 | The second of this local date and time within the minute, in the range 0 to 59 inclusive. | 
    
  
  
  TickOfDay
  
Gets the tick of this local date and time within the day, in the range 0 to 863,999,999,999 inclusive.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public long TickOfDay { get; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Int64 | The tick of this local date and time within the day, in the range 0 to 863,999,999,999 inclusive. | 
    
  
  
  TickOfSecond
  
Gets the tick of this local time within the second, in the range 0 to 9,999,999 inclusive.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public int TickOfSecond { get; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Int32 | The tick of this local time within the second, in the range 0 to 9,999,999 inclusive. | 
    
  
  
  TimeOfDay
  
Gets the time portion of this local date and time as a 
LocalTime.
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalTime TimeOfDay { get; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | LocalTime | The time portion of this local date and time as a LocalTime. | 
    
  
  
  Year
  Gets the year of this local date and time.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Int32 | The year of this local date and time. | 
    
  
  
  
  
  YearOfEra
  Gets the year of this local date and time within its era.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public int YearOfEra { get; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Int32 | The year of this local date and time within its era. | 
    
  
  Methods
  
  Add(LocalDateTime, Period)
  
Add the specified period to the date and time. Friendly alternative to operator+().
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public static LocalDateTime Add(LocalDateTime localDateTime, Period period)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | LocalDateTime | localDateTime | Initial local date and time | 
      
        | Period | period | Period to add | 
    
  
  Returns
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentNullException | period is null. | 
    
  
  
  CompareTo(LocalDateTime)
  
Indicates whether this date/time is earlier, later or the same as another one.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public int CompareTo(LocalDateTime other)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | LocalDateTime | other | The other local date/time to compare with this value. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Int32 | A value less than zero if this date/time is earlier than other;
zero if this date/time is the same asother; a value greater than zero if this date/time is
later thanother. | 
    
  
  
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentException | The calendar system of otheris not the
same as the calendar system of this value. | 
    
  
  
  Equals(LocalDateTime)
  
Indicates whether the current object is equal to another object of the same type.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public bool Equals(LocalDateTime other)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | LocalDateTime | other | An object to compare with this object. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if the current object is equal to the otherparameter; otherwise, false. | 
    
  
  
  Equals(Object)
  
Determines whether the specified System.Object is equal to this instance.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public override bool Equals(object obj)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Object | obj | The System.Object to compare with this instance. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | trueif the specified System.Object is equal to this instance;
otherwise,false. | 
    
  
  Overrides
  System.ValueType.Equals(System.Object)
  
  FromDateTime(DateTime)
  
Converts a System.DateTime of any kind to a LocalDateTime in the ISO calendar. This does not perform
any time zone conversions, so a DateTime with a System.DateTime.Kind of System.DateTimeKind.Utc
will still have the same day/hour/minute etc - it won't be converted into the local system time.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public static LocalDateTime FromDateTime(DateTime dateTime)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | DateTime | dateTime | Value to convert into a Noda Time local date and time | 
    
  
  Returns
  
  
  FromDateTime(DateTime, CalendarSystem)
  
Converts a System.DateTime of any kind to a LocalDateTime in the specified calendar. This does not perform
any time zone conversions, so a DateTime with a System.DateTime.Kind of System.DateTimeKind.Utc
will still have the same day/hour/minute etc - it won't be converted into the local system time.
  
  
  Since 2.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public static LocalDateTime FromDateTime(DateTime dateTime, CalendarSystem calendar)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | DateTime | dateTime | Value to convert into a Noda Time local date and time | 
      
        | CalendarSystem | calendar | The calendar system to convert into | 
    
  
  Returns
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentNullException | calendar is null. | 
    
  
  
  GetHashCode()
  
Returns a hash code for this instance.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public override int GetHashCode()
   
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Int32 | A hash code for this instance, suitable for use in hashing algorithms and data
structures like a hash table. | 
    
  
  Overrides
  System.ValueType.GetHashCode()
  
  InUtc()
  
Returns the mapping of this local date/time within 
Utc.
  Since 1.1.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public ZonedDateTime InUtc()
   
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | ZonedDateTime | The result of mapping this local date/time in UTC. | 
    
  
  
  
  
  InZone(DateTimeZone, ZoneLocalMappingResolver)
  
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public ZonedDateTime InZone(DateTimeZone zone, ZoneLocalMappingResolver resolver)
   
  Parameters
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | ZonedDateTime | The result of resolving the mapping. | 
    
  
  
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentNullException | zone or resolver is null | 
    
  
  
  InZoneLeniently(DateTimeZone)
  
Returns the mapping of this local date/time within the given 
DateTimeZone,
with "lenient" rules applied such that ambiguous values map to the earlier of the alternatives, and
"skipped" values are shifted forward by the duration of the "gap".
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public ZonedDateTime InZoneLeniently(DateTimeZone zone)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | DateTimeZone | zone | The time zone in which to map this local date/time. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | ZonedDateTime | The result of mapping this local date/time in the given time zone. | 
    
  
  
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentNullException | zone is null. | 
    
  
  
  InZoneStrictly(DateTimeZone)
  
Returns the mapping of this local date/time within the given 
DateTimeZone,
with "strict" rules applied such that an exception is thrown if either the mapping is
ambiguous or the time is skipped.
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public ZonedDateTime InZoneStrictly(DateTimeZone zone)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | DateTimeZone | zone | The time zone in which to map this local date/time. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | ZonedDateTime | The result of mapping this local date/time in the given time zone. | 
    
  
  
  
  Exceptions
  
  
  Minus(LocalDateTime)
  
Subtracts the specified date/time from this date/time, returning the result as a 
Period.
Fluent alternative to 
operator-().
  Since 2.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public Period Minus(LocalDateTime localDateTime)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | LocalDateTime | localDateTime | The date/time to subtract from this | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Period | The difference between the specified date/time and this one (The value returned is never null.) | 
    
  
  
  
  
  Minus(Period)
  
Subtracts a period from a local date/time. Fields are subtracted in the order provided by the period.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime Minus(Period period)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Period | period | Period to subtract | 
    
  
  Returns
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentNullException | period is null. | 
    
  
  
  Next(IsoDayOfWeek)
  
Returns the next 
LocalDateTime falling on the specified 
IsoDayOfWeek,
at the same time of day as this value.
This is a strict "next" - if this value on already falls on the target
day of the week, the returned value will be a week later.
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime Next(IsoDayOfWeek targetDayOfWeek)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | IsoDayOfWeek | targetDayOfWeek | The ISO day of the week to return the next date of. | 
    
  
  Returns
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | System.InvalidOperationException | The underlying calendar doesn't use ISO days of the week. | 
      
        | ArgumentOutOfRangeException | targetDayOfWeekis not a valid day of the
    week (Monday to Sunday). | 
    
  
  
  Plus(Period)
  
Adds a period to this local date/time. Fields are added in the order provided by the period.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime Plus(Period period)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Period | period | Period to add | 
    
  
  Returns
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentNullException | period is null. | 
    
  
  
  PlusDays(Int32)
  
Returns a new LocalDateTime representing the current value with the given number of days added.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime PlusDays(int days)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int32 | days | The number of days to add | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | LocalDateTime | The current value plus the given number of days. | 
    
  
  
  
  
  PlusHours(Int64)
  
Returns a new LocalDateTime representing the current value with the given number of hours added.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime PlusHours(long hours)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int64 | hours | The number of hours to add | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | LocalDateTime | The current value plus the given number of hours. | 
    
  
  
  PlusMilliseconds(Int64)
  
Returns a new LocalDateTime representing the current value with the given number of milliseconds added.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime PlusMilliseconds(long milliseconds)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int64 | milliseconds | The number of milliseconds to add | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | LocalDateTime | The current value plus the given number of milliseconds. | 
    
  
  
  PlusMinutes(Int64)
  
Returns a new LocalDateTime representing the current value with the given number of minutes added.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime PlusMinutes(long minutes)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int64 | minutes | The number of minutes to add | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | LocalDateTime | The current value plus the given number of minutes. | 
    
  
  
  PlusMonths(Int32)
  
Returns a new LocalDateTime representing the current value with the given number of months added.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime PlusMonths(int months)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int32 | months | The number of months to add | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | LocalDateTime | The current value plus the given number of months. | 
    
  
  
  
  
  PlusNanoseconds(Int64)
  
Returns a new LocalDateTime representing the current value with the given number of nanoseconds added.
  
  
  Since 2.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime PlusNanoseconds(long nanoseconds)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int64 | nanoseconds | The number of nanoseconds to add | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | LocalDateTime | The current value plus the given number of nanoseconds. | 
    
  
  
  PlusSeconds(Int64)
  
Returns a new LocalDateTime representing the current value with the given number of seconds added.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime PlusSeconds(long seconds)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int64 | seconds | The number of seconds to add | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | LocalDateTime | The current value plus the given number of seconds. | 
    
  
  
  PlusTicks(Int64)
  
Returns a new LocalDateTime representing the current value with the given number of ticks added.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime PlusTicks(long ticks)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int64 | ticks | The number of ticks to add | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | LocalDateTime | The current value plus the given number of ticks. | 
    
  
  
  PlusWeeks(Int32)
  
Returns a new LocalDateTime representing the current value with the given number of weeks added.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime PlusWeeks(int weeks)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int32 | weeks | The number of weeks to add | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | LocalDateTime | The current value plus the given number of weeks. | 
    
  
  
  PlusYears(Int32)
  
Returns a new LocalDateTime representing the current value with the given number of years added.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime PlusYears(int years)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int32 | years | The number of years to add | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | LocalDateTime | The current value plus the given number of years. | 
    
  
  
  
  
  Previous(IsoDayOfWeek)
  
Returns the previous 
LocalDateTime falling on the specified 
IsoDayOfWeek,
at the same time of day as this value.
This is a strict "previous" - if this value on already falls on the target
day of the week, the returned value will be a week earlier.
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime Previous(IsoDayOfWeek targetDayOfWeek)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | IsoDayOfWeek | targetDayOfWeek | The ISO day of the week to return the previous date of. | 
    
  
  Returns
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | System.InvalidOperationException | The underlying calendar doesn't use ISO days of the week. | 
      
        | ArgumentOutOfRangeException | targetDayOfWeekis not a valid day of the
    week (Monday to Sunday). | 
    
  
  
  Subtract(LocalDateTime, LocalDateTime)
  
Subtracts one date/time from another, returning the result as a 
Period.
  Since 2.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public static Period Subtract(LocalDateTime lhs, LocalDateTime rhs)
   
  Parameters
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Period | The result of subtracting one date/time from another. (The value returned is never null.) | 
    
  
  
  
  
  Subtract(LocalDateTime, Period)
  
Subtracts the specified period from the date and time. Friendly alternative to operator-().
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public static LocalDateTime Subtract(LocalDateTime localDateTime, Period period)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | LocalDateTime | localDateTime | Initial local date and time | 
      
        | Period | period | Period to subtract | 
    
  
  Returns
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentNullException | period is null. | 
    
  
  
  ToDateTimeUnspecified()
  
Constructs a System.DateTime from this value which has a System.DateTime.Kind
of System.DateTimeKind.Unspecified.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public DateTime ToDateTimeUnspecified()
   
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | DateTime | A System.DateTime value for the same date and time as this value. | 
    
  
  
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | System.InvalidOperationException | The date/time is outside the range of DateTime. | 
    
  
  
  ToString()
  
Returns a System.String that represents this instance.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public override string ToString()
   
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | String | The value of the current instance in the default format pattern ("G"), using the current thread's
culture to obtain a format provider. | 
    
  
  Overrides
  System.ValueType.ToString()
  
  
  
Formats the value of the current instance using the specified pattern.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public string ToString(string patternText, IFormatProvider formatProvider)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | String | patternText | The System.String specifying the pattern to use,
or null to use the default format pattern ("G"). | 
      
        | IFormatProvider | formatProvider | The System.IFormatProvider to use when formatting the value,
or null to use the current thread's culture to obtain a format provider. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | String | A System.String containing the value of the current instance in the specified format. | 
    
  
  
  
  
using NodaTime;
using System;
using System.Globalization;
LocalDateTime dt = new LocalDateTime(2010, 6, 16, 16, 20);
Console.WriteLine(dt.ToString("yyyy-MM-dd'T'HH:mm:ss", CultureInfo.InvariantCulture));
Output:
2010-06-16T16:20:00
 
   
  
  With(Func<LocalDate, LocalDate>)
  
Returns this date/time, with the given date adjuster applied to it, maintaing the existing time of day.
  
  
  Since 2.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime With(Func<LocalDate, LocalDate> adjuster)
   
  Parameters
  
  Returns
  
  
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentNullException | adjuster is null. | 
    
  
  
  With(Func<LocalTime, LocalTime>)
  
Returns this date/time, with the given time adjuster applied to it, maintaining the existing date.
  
  
  Since 2.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime With(Func<LocalTime, LocalTime> adjuster)
   
  Parameters
  
  Returns
  
  
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentNullException | adjuster is null. | 
    
  
  
  WithCalendar(CalendarSystem)
  
Creates a new LocalDateTime representing the same physical date and time, but in a different calendar.
The returned LocalDateTime is likely to have different date field values to this one.
For example, January 1st 1970 in the Gregorian calendar was December 19th 1969 in the Julian calendar.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public LocalDateTime WithCalendar(CalendarSystem calendar)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CalendarSystem | calendar | The calendar system to convert this local date to. | 
    
  
  Returns
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentNullException | calendar is null. | 
    
  
  
  WithOffset(Offset)
  
Returns an 
OffsetDateTime for this local date/time with the given offset.
  Since 1.1.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public OffsetDateTime WithOffset(Offset offset)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Offset | offset | The offset to apply. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | OffsetDateTime | The result of this local date/time offset by the given amount. | 
    
  
  
  
  Operators
  
  Addition(LocalDateTime, Period)
  
Adds a period to a local date/time. Fields are added in the order provided by the period.
This is a convenience operator over the 
Plus(Period) method.
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public static LocalDateTime operator +(LocalDateTime localDateTime, Period period)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | LocalDateTime | localDateTime | Initial local date and time | 
      
        | Period | period | Period to add | 
    
  
  Returns
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentNullException | period is null. | 
    
  
  
  Equality(LocalDateTime, LocalDateTime)
  
Implements the operator == (equality).
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public static bool operator ==(LocalDateTime left, LocalDateTime right)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | LocalDateTime | left | The left hand side of the operator. | 
      
        | LocalDateTime | right | The right hand side of the operator. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | trueif values are equal to each other, otherwisefalse. | 
    
  
  
  GreaterThan(LocalDateTime, LocalDateTime)
  
Compares two LocalDateTime values to see if the left one is strictly later than the right
one.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public static bool operator>(LocalDateTime lhs, LocalDateTime rhs)
   
  Parameters
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if the lhsis strictly later thanrhs, false otherwise. | 
    
  
  
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentException | The calendar system of rhsis not the same
as the calendar oflhs. | 
    
  
  
  GreaterThanOrEqual(LocalDateTime, LocalDateTime)
  
Compares two LocalDateTime values to see if the left one is later than or equal to the right
one.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public static bool operator >=(LocalDateTime lhs, LocalDateTime rhs)
   
  Parameters
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if the lhsis later than or equal torhs, false otherwise. | 
    
  
  
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentException | The calendar system of rhsis not the same
as the calendar oflhs. | 
    
  
  
  Inequality(LocalDateTime, LocalDateTime)
  
Implements the operator != (inequality).
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public static bool operator !=(LocalDateTime left, LocalDateTime right)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | LocalDateTime | left | The left hand side of the operator. | 
      
        | LocalDateTime | right | The right hand side of the operator. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | trueif values are not equal to each other, otherwisefalse. | 
    
  
  
  LessThan(LocalDateTime, LocalDateTime)
  
Compares two LocalDateTime values to see if the left one is strictly earlier than the right
one.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public static bool operator <(LocalDateTime lhs, LocalDateTime rhs)
   
  Parameters
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if the lhsis strictly earlier thanrhs, false otherwise. | 
    
  
  
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentException | The calendar system of rhsis not the same
as the calendar oflhs. | 
    
  
  
  LessThanOrEqual(LocalDateTime, LocalDateTime)
  
Compares two LocalDateTime values to see if the left one is earlier than or equal to the right
one.
  
  
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public static bool operator <=(LocalDateTime lhs, LocalDateTime rhs)
   
  Parameters
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if the lhsis earlier than or equal torhs, false otherwise. | 
    
  
  
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentException | The calendar system of rhsis not the same
as the calendar oflhs. | 
    
  
  
  Subtraction(LocalDateTime, LocalDateTime)
  
Subtracts one date/time from another, returning the result as a 
Period.
  Since 2.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public static Period operator -(LocalDateTime lhs, LocalDateTime rhs)
   
  Parameters
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Period | The result of subtracting one date/time from another. (The value returned is never null.) | 
    
  
  
  
  
  Subtraction(LocalDateTime, Period)
  
Subtracts a period from a local date/time. Fields are subtracted in the order provided by the period.
This is a convenience operator over the 
Minus(Period) method.
  Since 1.0.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    public static LocalDateTime operator -(LocalDateTime localDateTime, Period period)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | LocalDateTime | localDateTime | Initial local date and time | 
      
        | Period | period | Period to subtract | 
    
  
  Returns
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentNullException | period is null. | 
    
  
  Explicit Interface Implementations
  
  IComparable.CompareTo(Object)
  
Implementation of System.IComparable.CompareTo(System.Object) to compare two LocalDateTimes.
  
  
  Since 1.1.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    int IComparable.CompareTo(object obj)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Object | obj | The object to compare this value with. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Int32 | The result of comparing this LocalDateTime with another one; see CompareTo(LocalDateTime) for general details.
If objis null, this method returns a value greater than 0. | 
    
  
  
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentException | objis non-null but does not refer to an instance of LocalDateTime,
    or refers to a adate/time in a different calendar system. | 
    
  
  
  ISerializable.GetObjectData(SerializationInfo, StreamingContext)
  
Implementation of System.Runtime.Serialization.ISerializable.GetObjectData(System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext).
  
  
  Since 1.2.x
  
  
  Availability net45
  
  Declaration
  
    [SecurityCritical]
void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | SerializationInfo | info | The System.Runtime.Serialization.SerializationInfo to populate with data. | 
      
        | StreamingContext | context | The destination for this serialization. | 
    
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentNullException | info is null. | 
    
  
  
  IXmlSerializable.GetSchema()
  
  
  
  Since 1.2.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    XmlSchema IXmlSerializable.GetSchema()
   
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | XmlSchema |  | 
    
  
  
  IXmlSerializable.ReadXml(XmlReader)
  
  
  
  Since 1.2.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    void IXmlSerializable.ReadXml(XmlReader reader)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | XmlReader | reader |  | 
    
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentNullException | reader is null. | 
    
  
  
  IXmlSerializable.WriteXml(XmlWriter)
  
  
  
  Since 1.2.x
  
  
  Availability net45, netstandard1.3
  
  Declaration
  
    void IXmlSerializable.WriteXml(XmlWriter writer)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | XmlWriter | writer |  | 
    
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentNullException | writer is null. | 
    
  
  Implements
  
      System.IEquatable<T>
  
  
      System.IComparable<T>
  
  
      System.IComparable
  
  
      System.IFormattable
  
  
      System.Xml.Serialization.IXmlSerializable
  
  
      System.Runtime.Serialization.ISerializable