(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

TimeZoneInfo.AdjustmentRule-Klasse

Stellt Informationen über eine Zeitzonenanpassung bereit, z. B. zum Wechsel zu und von der Sommerzeit.

System.Object
  System.TimeZoneInfo.AdjustmentRule

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

[SerializableAttribute]
[HostProtectionAttribute(SecurityAction.LinkDemand, MayLeakOnAbort = true)]
public sealed class AdjustmentRule : IEquatable<TimeZoneInfo.AdjustmentRule>, 
	ISerializable, IDeserializationCallback

Der TimeZoneInfo.AdjustmentRule-Typ macht die folgenden Member verfügbar.

  NameBeschreibung
Öffentliche EigenschaftDateEndRuft das Datum ab, an dem die Gültigkeit der Anpassungsregel endet.
Öffentliche EigenschaftDateStartRuft das Datum ab, zu dem die Anpassungsregel wirksam wird.
Öffentliche EigenschaftDaylightDeltaRuft die Länge des Zeitraums ab, aus dem die Sommerzeit der Zeitzone besteht. Dieser Zeitraum wird zum Offset der Zeitzone von der Coordinated Universal Time (UTC) addiert.
Öffentliche EigenschaftDaylightTransitionEndRuft Informationen über den jährlichen Wechsel von der Sommerzeit zurück zur Standardzeit ab.
Öffentliche EigenschaftDaylightTransitionStartRuft Informationen über den jährlichen Wechsel von der Standardzeit zurück zur Sommerzeit ab.
Zum Seitenanfang

  NameBeschreibung
Öffentliche MethodeStatischer MemberCreateAdjustmentRuleErstellt eine neue Anpassungsregel für eine bestimmte Zeitzone.
Öffentliche MethodeEquals(Object)Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist. (Von Object geerbt.)
Öffentliche MethodeEquals(TimeZoneInfo.AdjustmentRule)Bestimmt, ob das aktuelle TimeZoneInfo.AdjustmentRule-Objekt und ein zweites TimeZoneInfo.AdjustmentRule-Objekt gleich sind.
Öffentliche MethodeGetHashCodeWird als Hashfunktion für Hashalgorithmen und Datenstrukturen wie Hashtabellen verwendet. (Überschreibt Object.GetHashCode().)
Öffentliche MethodeGetTypeRuft den Type der aktuellen Instanz ab. (Von Object geerbt.)
Öffentliche MethodeToStringGibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.)
Zum Seitenanfang

  NameBeschreibung
Explizite SchnittstellenimplementierungPrivate MethodeIDeserializationCallback.OnDeserializationInfrastruktur. Wird ausgeführt, wenn die Deserialisierung eines TimeZoneInfo.AdjustmentRule-Objekts abgeschlossen ist.
Explizite SchnittstellenimplementierungPrivate MethodeISerializable.GetObjectDataInfrastruktur. Füllt das SerializationInfo-Objekt mit den Daten auf, die zum Serialisieren dieses Objekts erforderlich sind.
Zum Seitenanfang

Die TimeZoneInfo.AdjustmentRule-Klasse definiert das effektive Anfangs- und Enddatum eines bestimmten Zeitwechsels zu bzw. von der Sommerzeit sowie das Delta (die genaue Differenz, um die die Standardzeit der Zeitzone durch die Anpassung geändert wird). Außerdem geben zwei Eigenschaften TimeZoneInfo.TransitionTime-Objekte zurück, die den Zeitpunkt des Übergangs zu und von der Standardzeit definieren.

HinweisHinweis

Eine Instanz der TimeZoneInfo.AdjustmentRule-Klasse ist unveränderlich. Nach dem Erstellen eines Objekts können seine Werte nicht geändert werden.

Rufen Sie zum Erstellen eines TimeZoneInfo.AdjustmentRule-Objekts die static (Shared in Visual Basic) TimeZoneInfo.AdjustmentRule.CreateAdjustmentRule-Methode auf. Sie können dann ein Array von TimeZoneInfo.AdjustmentRule-Objekten für zwei der Überladungen der TimeZoneInfo.CreateCustomTimeZone-Methode bereitstellen. Rufen Sie zum Abrufen der Anpassungsregeln einer bestimmten Zeitzone die entsprechende TimeZoneInfo.GetAdjustmentRules-Methode auf, die ein Array von TimeZoneInfo.AdjustmentRule-Objekten zurückgibt.

HinweisHinweis

Das auf diesen Typ oder Member angewendete HostProtectionAttribute-Attribut besitzt den folgenden Resources-Eigenschaftswert: MayLeakOnAbort. Das HostProtectionAttribute hat keine Auswirkungen auf Desktopanwendungen (die normalerweise durch Doppelklicken auf ein Symbol, Eingeben eines Befehls oder einer URL in einem Browser gestartet werden). Weitere Informationen finden Sie unter der HostProtectionAttribute-Klasse oder unter SQL Server-Programmierung und Hostschutzattribute.

Im folgenden Beispiel werden alle im lokalen System definierten Zeitzonen abgerufen und die vollständigen Informationen zu den Anpassungsregeln angezeigt.


private enum WeekOfMonth 
{
   First = 1,
   Second = 2,
   Third = 3,
   Fourth = 4,
   Last = 5,
}

private static void ShowStartAndEndDates()
{
   // Get all time zones from system
   ReadOnlyCollection<TimeZoneInfo> timeZones = TimeZoneInfo.GetSystemTimeZones();
   string[] monthNames = CultureInfo.CurrentCulture.DateTimeFormat.MonthNames;
   // Get each time zone
   foreach (TimeZoneInfo timeZone in timeZones)
   {
      TimeZoneInfo.AdjustmentRule[] adjustments = timeZone.GetAdjustmentRules();
      // Display message for time zones with no adjustments
      if (adjustments.Length == 0)
      {
         Console.WriteLine("{0} has no adjustment rules", timeZone.StandardName);
      }   
      else
      {
         // Handle time zones with 1 or 2+ adjustments differently
         bool showCount = false;
         int ctr = 0;
         string spacer = "";

         Console.WriteLine("{0} Adjustment rules", timeZone.StandardName);
         if (adjustments.Length > 1)
         {
            showCount = true;
            spacer = "   ";
         }   
         // Iterate adjustment rules
         foreach (TimeZoneInfo.AdjustmentRule adjustment in adjustments)
         {
            if (showCount)
            { 
               Console.WriteLine("   Adjustment rule #{0}", ctr+1);
               ctr++;
            }
            // Display general adjustment information
            Console.WriteLine("{0}   Start Date: {1:D}", spacer, adjustment.DateStart);
            Console.WriteLine("{0}   End Date: {1:D}", spacer, adjustment.DateEnd);
            Console.WriteLine("{0}   Time Change: {1}:{2:00} hours", spacer, 
                              adjustment.DaylightDelta.Hours, adjustment.DaylightDelta.Minutes);
            // Get transition start information
            TimeZoneInfo.TransitionTime transitionStart = adjustment.DaylightTransitionStart;
            Console.Write("{0}   Annual Start: ", spacer);
            if (transitionStart.IsFixedDateRule)
            {
               Console.WriteLine("On {0} {1} at {2:t}", 
                                 monthNames[transitionStart.Month - 1], 
                                 transitionStart.Day, 
                                 transitionStart.TimeOfDay);
            }
            else
            {
               Console.WriteLine("The {0} {1} of {2} at {3:t}", 
                                 ((WeekOfMonth)transitionStart.Week).ToString(), 
                                 transitionStart.DayOfWeek.ToString(), 
                                 monthNames[transitionStart.Month - 1], 
                                 transitionStart.TimeOfDay);
            }
            // Get transition end information
            TimeZoneInfo.TransitionTime transitionEnd = adjustment.DaylightTransitionEnd;
            Console.Write("{0}   Annual End: ", spacer);
            if (transitionEnd.IsFixedDateRule)
            {
               Console.WriteLine("On {0} {1} at {2:t}", 
                                 monthNames[transitionEnd.Month - 1], 
                                 transitionEnd.Day, 
                                 transitionEnd.TimeOfDay);
            }
            else
            {
               Console.WriteLine("The {0} {1} of {2} at {3:t}", 
                                 ((WeekOfMonth)transitionEnd.Week).ToString(), 
                                 transitionEnd.DayOfWeek.ToString(), 
                                 monthNames[transitionEnd.Month - 1], 
                                 transitionEnd.TimeOfDay);
            }
         }
      }   
      Console.WriteLine();
   } 
}


Das Folgende ist ein kleiner Teil der Ausgabe, die vom Beispiel generiert wird. Die genaue Ausgabe variiert abhängig vom Betriebssystem und dem Datum, an dem das Beispiel ausgeführt wird.

Morocco Standard Time Adjustment rules
   Adjustment rule #1
      Start Date: Tuesday, January 01, 2008
      End Date: Wednesday, December 31, 2008
      Time Change: 1:00 hours
      Annual Start: The Last Saturday of May at 11:59 PM
      Annual End: The Last Sunday of August at 11:59 PM
   Adjustment rule #2
      Start Date: Thursday, January 01, 2009
      End Date: Thursday, December 31, 2009
      Time Change: 1:00 hours
      Annual Start: The Last Sunday of May at 11:59 PM
      Annual End: The Third Thursday of August at 11:59 PM

Coordinated Universal Time has no adjustment rules

GMT Standard Time Adjustment rules
   Start Date: Monday, January 01, 0001
   End Date: Friday, December 31, 9999
   Time Change: 1:00 hours
   Annual Start: The Last Sunday of March at 1:00 AM
   Annual End: The Last Sunday of October at 2:00 AM

Greenwich Standard Time has no adjustment rules

W. Europe Standard Time Adjustment rules
   Start Date: Monday, January 01, 0001
   End Date: Friday, December 31, 9999
   Time Change: 1:00 hours
   Annual Start: The Last Sunday of March at 2:00 AM
   Annual End: The Last Sunday of October at 3:00 AM

Central Europe Standard Time Adjustment rules
   Start Date: Monday, January 01, 0001
   End Date: Friday, December 31, 9999
   Time Change: 1:00 hours
   Annual Start: The Last Sunday of March at 2:00 AM
   Annual End: The Last Sunday of October at 3:00 AM

Romance Standard Time Adjustment rules
   Start Date: Monday, January 01, 0001
   End Date: Friday, December 31, 9999
   Time Change: 1:00 hours
   Annual Start: The Last Sunday of March at 2:00 AM
   Annual End: The Last Sunday of October at 3:00 AM

Central European Standard Time Adjustment rules
   Start Date: Monday, January 01, 0001
   End Date: Friday, December 31, 9999
   Time Change: 1:00 hours
   Annual Start: The Last Sunday of March at 2:00 AM
   Annual End: The Last Sunday of October at 3:00 AM

W. Central Africa Standard Time has no adjustment rules

.NET Framework

Unterstützt in: 4.5.2, 4.5.1, 4.5, 4, 3.5

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft