Sdílet prostřednictvím


InfiniteTimeSpanConverter Třída

Definice

Převede mezi řetězcem a standardní nekonečnou TimeSpan hodnotou.

public ref class InfiniteTimeSpanConverter sealed : System::Configuration::ConfigurationConverterBase
public sealed class InfiniteTimeSpanConverter : System.Configuration.ConfigurationConverterBase
type InfiniteTimeSpanConverter = class
    inherit ConfigurationConverterBase
Public NotInheritable Class InfiniteTimeSpanConverter
Inherits ConfigurationConverterBase
Dědičnost
InfiniteTimeSpanConverter

Příklady

Následující příklad kódu ukazuje, jak definovat vlastní vlastnost oddílu InfiniteTimeSpanConverter , která používá třídu.

Úplný ukázkový kód, který implementuje vlastní oddíl, najdete v tématu třída ConfigurationConverterBase .

[ConfigurationProperty("timeDelay", 
    DefaultValue = "infinite")]
[TypeConverter(typeof(InfiniteTimeSpanConverter))]
public TimeSpan TimeDelay
{
    get
    {
        return (TimeSpan)this["timeDelay"];
    }
    set
    {
        this["timeDelay"] = value;
    }
}

<ConfigurationProperty("timeDelay", _
DefaultValue:="infinite"), _
TypeConverter(GetType(InfiniteTimeSpanConverter))> _
Public Property TimeDelay() As TimeSpan
    Get
        Return CType(Me("timeDelay"), TimeSpan)
    End Get
    Set(ByVal value As TimeSpan)
        Me("timeDelay") = Value
    End Set
End Property

Následující ukázkový kód ukazuje, jak získat přístup k předchozí vlastní vlastnosti oddílu.

using System;
using System.IO;
using System.ComponentModel;
using System.Configuration;

namespace Samples.AspNet
{
  
    public sealed class UsingInfiniteTimeSpanConverter
    {
        public static void GetTimeDelay()
        {
            try
            {
                CustomSection section =
                    ConfigurationManager.GetSection("CustomSection")
                    as CustomSection;
                
                Console.WriteLine("timeDelay: {0}", 
                    section.TimeDelay.ToString());
            }
            catch (System.Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }

        public static void SetTimeDelay()
        {
            try
            {
                System.Configuration.Configuration config =
                  ConfigurationManager.OpenExeConfiguration(
                  ConfigurationUserLevel.None);

                CustomSection section =
                    config.Sections.Get("CustomSection")
                    as CustomSection;

                TimeSpan td = 
                    new TimeSpan();

                td =
                    TimeSpan.FromMinutes(
                    DateTime.Now.Minute);

                section.TimeDelay = td;

                section.SectionInformation.ForceSave = true;
                config.Save(ConfigurationSaveMode.Full); 
                config.Save();

                Console.WriteLine("timeDelay: {0}",
                    section.TimeDelay.ToString());
            }
            catch (System.Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
    }
}
Imports System.IO
Imports System.ComponentModel
Imports System.Configuration


NotInheritable Public Class UsingInfiniteTimeSpanConverter
    
    Public Shared Sub GetTimeDelay() 
        Try
            Dim section As CustomSection = _
            ConfigurationManager.GetSection( _
            "CustomSection")
            Console.WriteLine("timeDelay: {0}", _
            section.TimeDelay.ToString())
        Catch e As System.Exception
            Console.WriteLine(e.Message)
        End Try
    
    End Sub
    
    
    Public Shared Sub SetTimeDelay() 
        Try
            Dim config _
            As System.Configuration.Configuration = _
            ConfigurationManager.OpenExeConfiguration( _
            ConfigurationUserLevel.None)
            
            Dim section As CustomSection = _
            config.Sections.Get("CustomSection")
            
            Dim td As New TimeSpan()
            
            td = _
            TimeSpan.FromMinutes( _
            DateTime.Now.Minute)
            
            section.TimeDelay = td
            
            section.SectionInformation.ForceSave = True
            config.Save(ConfigurationSaveMode.Full)
            config.Save()
            
            Console.WriteLine("timeDelay: {0}", _
            section.TimeDelay.ToString())
        Catch e As System.Exception
            Console.WriteLine(e.Message)
        End Try
    
    End Sub
End Class

Následuje výňatek z konfigurace, který byl použit v předchozím příkladu.

<?xml version="1.0" encoding="utf-8"?>  
<configuration>  
  <configSections>  
    <section name="CustomSection"   
      type="Samples.AspNet.CustomSection,   
      ConfigurationConverters,   
      Version=1.0.0.0, Culture=neutral,   
      PublicKeyToken=null"   
      allowDefinition="Everywhere"   
      allowExeDefinition="MachineToApplication"   
      restartOnExternalChanges="true" />  
    </configSections>  
    <CustomSection fileName="default.txt" maxIdleTime="90" timeDelay="infinite"/>  
</configuration>  

Poznámky

Tento typ, stejně jako všechny ostatní typy převaděčů konfigurace, převede řetězce nalezené v konfiguračním souboru na a z souvisejících vlastností silného typu.

Konkrétně převede InfiniteTimeSpanConverterString hodnotu "infinite" přiřazenou vlastnosti konfigurace na standardní infinite TimeSpan a naopak. Nekonečná TimeSpan hodnota je reprezentována hodnotou výčtu MaxValue .

Tento převaděč se používá s vlastnostmi TimeSpan . Nekonečná hodnota je trvale uložena jako "nekonečný" řetězec.

Konstruktory

InfiniteTimeSpanConverter()

Inicializuje novou instanci InfiniteTimeSpanConverter třídy.

Metody

CanConvertFrom(ITypeDescriptorContext, Type)

Určuje, zda je povolen převod.

(Zděděno od ConfigurationConverterBase)
CanConvertFrom(Type)

Vrátí, zda tento převaděč může převést objekt daného typu na typ tohoto převaděče.

(Zděděno od TypeConverter)
CanConvertTo(ITypeDescriptorContext, Type)

Určuje, zda je povolen převod.

(Zděděno od ConfigurationConverterBase)
CanConvertTo(Type)

Vrátí, zda tento převaděč může převést objekt na zadaný typ.

(Zděděno od TypeConverter)
ConvertFrom(ITypeDescriptorContext, CultureInfo, Object)

Převede na StringTimeSpan.

ConvertFrom(Object)

Převede danou hodnotu na typ tohoto převaděče.

(Zděděno od TypeConverter)
ConvertFromInvariantString(ITypeDescriptorContext, String)

Převede daný řetězec na typ tohoto převaděče pomocí invariantní jazykové verze a zadaného kontextu.

(Zděděno od TypeConverter)
ConvertFromInvariantString(String)

Převede daný řetězec na typ tohoto převaděče pomocí invariantní jazykové verze.

(Zděděno od TypeConverter)
ConvertFromString(ITypeDescriptorContext, CultureInfo, String)

Převede daný text na objekt pomocí zadaného kontextu a informací o jazykové verzi.

(Zděděno od TypeConverter)
ConvertFromString(ITypeDescriptorContext, String)

Převede daný text na objekt pomocí zadaného kontextu.

(Zděděno od TypeConverter)
ConvertFromString(String)

Převede zadaný text na objekt.

(Zděděno od TypeConverter)
ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type)

Převede na TimeSpanString.

ConvertTo(Object, Type)

Převede daný objekt hodnoty na zadaný typ pomocí argumentů.

(Zděděno od TypeConverter)
ConvertToInvariantString(ITypeDescriptorContext, Object)

Převede zadanou hodnotu na reprezentaci řetězce invariantní jazykové verze pomocí zadaného kontextu.

(Zděděno od TypeConverter)
ConvertToInvariantString(Object)

Převede zadanou hodnotu na reprezentaci řetězce invariantní jazykové verze.

(Zděděno od TypeConverter)
ConvertToString(ITypeDescriptorContext, CultureInfo, Object)

Převede danou hodnotu na řetězcovou reprezentaci pomocí zadaného kontextu a informací o jazykové verzi.

(Zděděno od TypeConverter)
ConvertToString(ITypeDescriptorContext, Object)

Převede danou hodnotu na řetězcovou reprezentaci pomocí daného kontextu.

(Zděděno od TypeConverter)
ConvertToString(Object)

Převede zadanou hodnotu na řetězcovou reprezentaci.

(Zděděno od TypeConverter)
CreateInstance(IDictionary)

Znovu vytvoří Object danou sadu hodnot vlastností pro objekt.

(Zděděno od TypeConverter)
CreateInstance(ITypeDescriptorContext, IDictionary)

Vytvoří instanci typu, ke kterému TypeConverter je přidružena, pomocí zadaného kontextu, vzhledem k sadě hodnot vlastností objektu.

(Zděděno od TypeConverter)
Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetConvertFromException(Object)

Vrátí výjimku, která se má vyvolat, když nelze provést převod.

(Zděděno od TypeConverter)
GetConvertToException(Object, Type)

Vrátí výjimku, která se má vyvolat, když nelze provést převod.

(Zděděno od TypeConverter)
GetCreateInstanceSupported()

Vrátí, zda změna hodnoty v tomto objektu vyžaduje volání CreateInstance(IDictionary) metody k vytvoření nové hodnoty.

(Zděděno od TypeConverter)
GetCreateInstanceSupported(ITypeDescriptorContext)

Vrátí, zda změna hodnoty v tomto objektu vyžaduje volání CreateInstance(IDictionary) k vytvoření nové hodnoty pomocí zadaného kontextu.

(Zděděno od TypeConverter)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetProperties(ITypeDescriptorContext, Object)

Vrátí kolekci vlastností pro typ pole určený parametrem value pomocí zadaného kontextu.

(Zděděno od TypeConverter)
GetProperties(ITypeDescriptorContext, Object, Attribute[])

Vrátí kolekci vlastností pro typ pole určený parametrem hodnoty pomocí zadaného kontextu a atributů.

(Zděděno od TypeConverter)
GetProperties(Object)

Vrátí kolekci vlastností pro typ pole určený parametrem value.

(Zděděno od TypeConverter)
GetPropertiesSupported()

Vrátí, zda tento objekt podporuje vlastnosti.

(Zděděno od TypeConverter)
GetPropertiesSupported(ITypeDescriptorContext)

Vrátí, zda tento objekt podporuje vlastnosti pomocí zadaného kontextu.

(Zděděno od TypeConverter)
GetStandardValues()

Vrátí kolekci standardních hodnot z výchozího kontextu pro datový typ, pro který je tento převaděč typů určen.

(Zděděno od TypeConverter)
GetStandardValues(ITypeDescriptorContext)

Vrátí kolekci standardních hodnot pro datový typ, pro který je tento převaděč typů určen, pokud je k dispozici s kontextem formátu.

(Zděděno od TypeConverter)
GetStandardValuesExclusive()

Vrátí, zda je kolekce standardních hodnot vrácená z GetStandardValues() výhradního seznamu.

(Zděděno od TypeConverter)
GetStandardValuesExclusive(ITypeDescriptorContext)

Vrátí, zda kolekce standardních hodnot vrácených z GetStandardValues() je výhradním seznamem možných hodnot pomocí zadaného kontextu.

(Zděděno od TypeConverter)
GetStandardValuesSupported()

Vrátí, zda tento objekt podporuje standardní sadu hodnot, které lze vybrat ze seznamu.

(Zděděno od TypeConverter)
GetStandardValuesSupported(ITypeDescriptorContext)

Vrátí, zda tento objekt podporuje standardní sadu hodnot, které lze vybrat ze seznamu pomocí zadaného kontextu.

(Zděděno od TypeConverter)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
IsValid(ITypeDescriptorContext, Object)

Vrátí, zda je daný objekt hodnoty platný pro tento typ a pro zadaný kontext.

(Zděděno od TypeConverter)
IsValid(Object)

Vrátí, zda je daný objekt hodnoty platný pro tento typ.

(Zděděno od TypeConverter)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
SortProperties(PropertyDescriptorCollection, String[])

Seřadí kolekci vlastností.

(Zděděno od TypeConverter)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro

Viz také