InfiniteTimeSpanConverterとは? わかりやすく解説

InfiniteTimeSpanConverter クラス

メモ : このクラスは、.NET Framework version 2.0 で新しく追加されたものです。

文字列と標準の無限 TimeSpan 値との間の変換を行います。

名前空間: System.Configuration
アセンブリ: System.Configuration (system.configuration.dll 内)
構文構文

Public NotInheritable Class
 InfiniteTimeSpanConverter
    Inherits ConfigurationConverterBase
Dim instance As InfiniteTimeSpanConverter
public sealed class InfiniteTimeSpanConverter
 : ConfigurationConverterBase
public ref class InfiniteTimeSpanConverter
 sealed : public ConfigurationConverterBase
public final class InfiniteTimeSpanConverter
 extends ConfigurationConverterBase
public final class InfiniteTimeSpanConverter
 extends ConfigurationConverterBase
解説解説

この型は、他のすべての構成コンバータ型と同様に、構成ファイル内に存在する文字列と、関連する厳密に型指定されたプロパティとの間の変換を行います。

特に、InfiniteTimeSpanConverter は、構成プロパティに代入された String 値 "infinite" から標準の無限 TimeSpan への変換、およびその逆の変換を行います。無限の TimeSpan 値は、MaxValue 列挙値によって表されます。

このコンバータは、TimeSpan プロパティと共に使用されます。無限値は、"infinite" 文字列として永続化されます。

使用例使用例

InfiniteTimeSpanConverter クラスを使用したカスタム セクション プロパティを定義する方法を次のコード例に示します。

カスタム セクションを実装する完全なコード例については、ConfigurationConverterBase クラスを参照してください。

<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
[ConfigurationProperty("timeDelay", 
    DefaultValue = "infinite")]
[TypeConverter(typeof(InfiniteTimeSpanConverter))]
public TimeSpan TimeDelay
{
    get
    {
        return (TimeSpan)this["timeDelay"];
    }
    set
    {
        this["timeDelay"] = value;
    }
}

前述のカスタム セクション プロパティへのアクセス方法を次のコード例に示します。

Imports System
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 'GetTimeDelay
    
    
    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 'SetTimeDelay
End Class 'UsingInfiniteTimeSpanConverter
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);
            }
        }
    }
}

前述の例で使用されている構成の抜粋を次に示します。

<?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>
継承階層継承階層
System.Object
   System.ComponentModel.TypeConverter
     System.Configuration.ConfigurationConverterBase
      System.Configuration.InfiniteTimeSpanConverter
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
InfiniteTimeSpanConverter メンバ
System.Configuration 名前空間
GenericEnumConverter クラス
InfiniteIntConverter クラス
TimeSpanMinutesConverter
TimeSpanMinutesOrInfiniteConverter
TimeSpanSecondsConverter
TimeSpanSecondsOrInfiniteConverter
TypeNameConverter
WhiteSpaceTrimStringConverter

InfiniteTimeSpanConverter コンストラクタ


InfiniteTimeSpanConverter メソッド


パブリック メソッドパブリック メソッド

( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド CanConvertFrom  オーバーロードされます。 変換できるかどうかを確認します。 ( ConfigurationConverterBase から継承されます。)
パブリック メソッド CanConvertTo  オーバーロードされます。 変換できるかどうかを確認します。 ( ConfigurationConverterBase から継承されます。)
パブリック メソッド ConvertFrom オーバーロードされます。 String を TimeSpan に変換します。
パブリック メソッド ConvertFromInvariantString  オーバーロードされます。 インバリアント カルチャを使用して、値をコンバータの型に変換します。 ( TypeConverter から継承されます。)
パブリック メソッド ConvertFromString  オーバーロードされます。 指定したテキストをオブジェクトに変換します。 ( TypeConverter から継承されます。)
パブリック メソッド ConvertTo オーバーロードされます。 TimeSpan を String に変換します。
パブリック メソッド ConvertToInvariantString  オーバーロードされます。 指定した値を、インバリアント カルチャを使用した文字列形式に変換します。 ( TypeConverter から継承されます。)
パブリック メソッド ConvertToString  オーバーロードされます。 指定した値を文字列形式に変換します。 ( TypeConverter から継承されます。)
パブリック メソッド CreateInstance  オーバーロードされます。 Object の一連のプロパティ値を指定して、そのオブジェクトを再作成します。 ( TypeConverter から継承されます。)
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。)
パブリック メソッド GetCreateInstanceSupported  オーバーロードされます。 このオブジェクトの値を変更するときに CreateInstance メソッドを呼び出して、新しい値を作成する必要があるかどうかを返します。 ( TypeConverter から継承されます。)
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。)
パブリック メソッド GetProperties  オーバーロードされます。 value パラメータに指定された配列型のプロパティのコレクションを返します。 ( TypeConverter から継承されます。)
パブリック メソッド GetPropertiesSupported  オーバーロードされます。 オブジェクトがプロパティをサポートしているかどうかを示す値を返します。 ( TypeConverter から継承されます。)
パブリック メソッド GetStandardValues  オーバーロードされます。 型コンバータがデザインされた対象のデータ型の標準値のコレクションを返します。 ( TypeConverter から継承されます。)
パブリック メソッド GetStandardValuesExclusive  オーバーロードされます。 GetStandardValues から返された標準値のコレクションが、排他的なリストかどうかを示す値を返します。 ( TypeConverter から継承されます。)
パブリック メソッド GetStandardValuesSupported  オーバーロードされます。 リストから選択できる標準値セットをオブジェクトがサポートするかどうかを示す値を返します。 ( TypeConverter から継承されます。)
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 ( Object から継承されます。)
パブリック メソッド IsValid  オーバーロードされます。 指定した値オブジェクトが型に対して有効かどうかを示す値を返します。 ( TypeConverter から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。)
パブリック メソッド ToString  現在の Object を表す String を返します。 ( Object から継承されます。)
プロテクト メソッドプロテクト メソッド
  名前 説明
プロテクト メソッド Finalize  Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。)
プロテクト メソッド GetConvertFromException  変換を実行できなかった場合にスローされる例外を返します。 ( TypeConverter から継承されます。)
プロテクト メソッド GetConvertToException  変換を実行できなかった場合にスローされる例外を返します。 ( TypeConverter から継承されます。)
プロテクト メソッド MemberwiseClone  現在の Object の簡易コピーを作成します。 ( Object から継承されます。)
プロテクト メソッド SortProperties  プロパティのコレクションを並べ替えます。 ( TypeConverter から継承されます。)
参照参照

関連項目

InfiniteTimeSpanConverter クラス
System.Configuration 名前空間
GenericEnumConverter クラス
InfiniteIntConverter クラス
TimeSpanMinutesConverter
TimeSpanMinutesOrInfiniteConverter
TimeSpanSecondsConverter
TimeSpanSecondsOrInfiniteConverter
TypeNameConverter
WhiteSpaceTrimStringConverter

InfiniteTimeSpanConverter メンバ

文字列と標準の無限 TimeSpan 値との間の変換を行います。

InfiniteTimeSpanConverter データ型で公開されるメンバを以下の表に示します。


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド InfiniteTimeSpanConverter InfiniteTimeSpanConverter クラスの新しいインスタンスを初期化します。
パブリック メソッドパブリック メソッド
( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド CanConvertFrom  オーバーロードされます。 変換できるかどうかを確認します。 (ConfigurationConverterBase から継承されます。)
パブリック メソッド CanConvertTo  オーバーロードされます。 変換できるかどうかを確認します。 (ConfigurationConverterBase から継承されます。)
パブリック メソッド ConvertFrom オーバーロードされます。 String を TimeSpan に変換します。
パブリック メソッド ConvertFromInvariantString  オーバーロードされます。 インバリアント カルチャを使用して、値をコンバータの型に変換します。 (TypeConverter から継承されます。)
パブリック メソッド ConvertFromString  オーバーロードされます。 指定したテキストをオブジェクトに変換します。 (TypeConverter から継承されます。)
パブリック メソッド ConvertTo オーバーロードされます。 TimeSpan を String に変換します。
パブリック メソッド ConvertToInvariantString  オーバーロードされます。 指定した値を、インバリアント カルチャを使用した文字列形式に変換します。 (TypeConverter から継承されます。)
パブリック メソッド ConvertToString  オーバーロードされます。 指定した値を文字列形式に変換します。 (TypeConverter から継承されます。)
パブリック メソッド CreateInstance  オーバーロードされます。 Object の一連のプロパティ値を指定して、そのオブジェクトを再作成します。 (TypeConverter から継承されます。)
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。)
パブリック メソッド GetCreateInstanceSupported  オーバーロードされます。 このオブジェクトの値を変更するときに CreateInstance メソッドを呼び出して、新しい値を作成する必要があるかどうかを返します。 (TypeConverter から継承されます。)
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。)
パブリック メソッド GetProperties  オーバーロードされます。 value パラメータに指定された配列型のプロパティのコレクションを返します。 (TypeConverter から継承されます。)
パブリック メソッド GetPropertiesSupported  オーバーロードされます。 オブジェクトがプロパティをサポートしているかどうかを示す値を返します。 (TypeConverter から継承されます。)
パブリック メソッド GetStandardValues  オーバーロードされます。 型コンバータがデザインされた対象のデータ型の標準値のコレクションを返します。 (TypeConverter から継承されます。)
パブリック メソッド GetStandardValuesExclusive  オーバーロードされます。 GetStandardValues から返された標準値のコレクションが、排他的なリストかどうかを示す値を返します。 (TypeConverter から継承されます。)
パブリック メソッド GetStandardValuesSupported  オーバーロードされます。 リストから選択できる標準値セットをオブジェクトがサポートするかどうかを示す値を返します。 (TypeConverter から継承されます。)
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 (Object から継承されます。)
パブリック メソッド IsValid  オーバーロードされます。 指定した値オブジェクトが型に対して有効かどうかを示す値を返します。 (TypeConverter から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。)
パブリック メソッド ToString  現在の Object を表す String を返します。 (Object から継承されます。)
プロテクト メソッドプロテクト メソッド
  名前 説明
プロテクト メソッド Finalize  Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。)
プロテクト メソッド GetConvertFromException  変換を実行できなかった場合にスローされる例外を返します。 (TypeConverter から継承されます。)
プロテクト メソッド GetConvertToException  変換を実行できなかった場合にスローされる例外を返します。 (TypeConverter から継承されます。)
プロテクト メソッド MemberwiseClone  現在の Object の簡易コピーを作成します。 (Object から継承されます。)
プロテクト メソッド SortProperties  プロパティのコレクションを並べ替えます。 (TypeConverter から継承されます。)
参照参照

関連項目

InfiniteTimeSpanConverter クラス
System.Configuration 名前空間
GenericEnumConverter クラス
InfiniteIntConverter クラス
TimeSpanMinutesConverter
TimeSpanMinutesOrInfiniteConverter
TimeSpanSecondsConverter
TimeSpanSecondsOrInfiniteConverter
TypeNameConverter
WhiteSpaceTrimStringConverter



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「InfiniteTimeSpanConverter」の関連用語

InfiniteTimeSpanConverterのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



InfiniteTimeSpanConverterのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS