ConfigurationErrorsException クラスとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > ConfigurationErrorsException クラスの意味・解説 

ConfigurationErrorsException クラス

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

構成システムエラー発生したときにスローされる例外

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

<SerializableAttribute> _
Public Class ConfigurationErrorsException
    Inherits ConfigurationException
Dim instance As ConfigurationErrorsException
[SerializableAttribute] 
public class ConfigurationErrorsException :
 ConfigurationException
[SerializableAttribute] 
public ref class ConfigurationErrorsException
 : public ConfigurationException
/** @attribute SerializableAttribute() */ 
public class ConfigurationErrorsException extends
 ConfigurationException
SerializableAttribute 
public class ConfigurationErrorsException extends
 ConfigurationException
解説解説
使用例使用例

カスタム セクション作成し、そのプロパティ変更時に ConfigurationErrorsException 例外生成するコード例次に示します

Imports System
Imports System.Configuration
Imports System.Collections.Specialized
Imports System.Collections



' Define a custom section.

NotInheritable Public Class
 CustomSection
    Inherits ConfigurationSection
    
    Public Sub New() 
    
    End Sub 'New
    
    
    <ConfigurationProperty("fileName", DefaultValue:="default.txt",
 IsRequired:=True, IsKey:=False), StringValidator(InvalidCharacters:=" ~!@#$%^&*()[]{}/;'""|\",
 MinLength:=1, MaxLength:=60)> _
    Public Property FileName() As
 String
        Get
            Return CStr(Me("fileName"))
        End Get
        Set(ByVal value As
 String)
            Me("fileName") = value
        End Set
    End Property
    
    
    <ConfigurationProperty("maxUsers", DefaultValue:=10,
 IsRequired:=False), LongValidator(MinValue:=1, MaxValue:=100, ExcludeRange:=False)>
 _
    Public Property MaxUsers() As
 Long
        Get
            Return Fix(Me("maxUsers"))
        End Get
        Set(ByVal value As
 Long)
            Me("maxUsers") = value
        End Set
    End Property
End Class 'CustomSection 


' Create the custom section and write it to
' the configuration file.

Class UsingConfigurationErrorsException
    
    ' Create a custom section.
    Shared Sub New()

        ' Get the application configuration file.
        Dim config _
        As System.Configuration.Configuration = _
        ConfigurationManager.OpenExeConfiguration( _
        ConfigurationUserLevel.None)

        ' If the section does not exist in the configuration
        ' file, create it and save it to the file.
        If config.Sections("CustomSection")
 Is Nothing Then
            Dim custSection As New
 CustomSection()
            config.Sections.Add("CustomSection", custSection)
            custSection = config.GetSection("CustomSection")
            custSection.SectionInformation.ForceSave = True
            config.Save(ConfigurationSaveMode.Full)
        End If

    End Sub 'New
    
    
    ' Modify a custom section and cause configuration 
    ' error exceptions.
    Shared Sub ModifyCustomSection() 
        
        Try
            ' Get the application configuration file.
            Dim config _
            As System.Configuration.Configuration = _
            ConfigurationManager.OpenExeConfiguration( _
            ConfigurationUserLevel.None)

            Dim custSection _
            As CustomSection = _
            config.Sections("CustomSection")
             
            ' Change the section properties.
            custSection.FileName = "newName.txt"
            
            ' Cause an exception.
            custSection.MaxUsers = _
            custSection.MaxUsers + 100
            
            If Not custSection.ElementInformation.IsLocked
 Then
                config.Save()
            Else
                Console.WriteLine( _
                "Section was locked, could not update.")
            End If
        Catch err As ConfigurationErrorsException
            
            Dim msg As String
 = err.Message
            Console.WriteLine("Message: {0}", msg)
            Dim fileName As String
 = err.Filename
            Console.WriteLine("Filename: {0}", _
            fileName)
            Dim lineNumber As Integer
 = err.Line
            Console.WriteLine("Line: {0}", _
            lineNumber.ToString())
            Dim bmsg As String
 = err.BareMessage
            Console.WriteLine("BareMessage: {0}",
 bmsg)
            Dim src As String
 = err.Source
            Console.WriteLine("Source: {0}", src)
            Dim st As String
 = err.StackTrace
            Console.WriteLine("StackTrace: {0}", st)
        End Try

    End Sub 'ModifyCustomSection

    Shared Sub Main(ByVal
 args() As String) 
        ModifyCustomSection()
    
    End Sub 'Main
End Class 'UsingConfigurationErrorsException
 

using System;
using System.Configuration;
using System.Collections.Specialized;
using System.Collections;

namespace Samples.AspNet
{

    // Define a custom section.
    public sealed class CustomSection :
       ConfigurationSection
    {
        public CustomSection()
        {
        }

        [ConfigurationProperty("fileName", DefaultValue = "default.txt"
,
                    IsRequired = true, IsKey = false)]
        [StringValidator(InvalidCharacters = " ~!@#$%^&*()[]{}/;'\"|\\"
,
            MinLength = 1, MaxLength = 60)]
        public string FileName
        {
            get
            {
                return (string)this["fileName"];
            }
            set
            {
                this["fileName"] = value;
            }
        }

        [ConfigurationProperty("maxUsers", DefaultValue = (long)10,
            IsRequired = false)]
        [LongValidator(MinValue = 1, MaxValue = 100,
            ExcludeRange = false)]
        public long MaxUsers
        {
            get
            {
                return (long)this["maxUsers"];
            }
            set
            {
                this["maxUsers"] = value;
            }
        }

    }


    // Create the custom section and write it to
    // the configuration file.
    class UsingConfigurationErrorsException
    {
        // Create a custom section.
        static UsingConfigurationErrorsException()
        {
            // Get the application configuration file.
            System.Configuration.Configuration config =
                    ConfigurationManager.OpenExeConfiguration(
                    ConfigurationUserLevel.None);

            // If the section does not exist in the configuration
            // file, create it and save it to the file.
            if (config.Sections["CustomSection"] ==
 null)
            {
                CustomSection custSection = new CustomSection();
                config.Sections.Add("CustomSection", custSection);
                custSection =
                    config.GetSection("CustomSection") as CustomSection;
                custSection.SectionInformation.ForceSave = true;
                config.Save(ConfigurationSaveMode.Full);
            }
        }
        
        // Modify a custom section and cause configuration 
        // error exceptions.
        static void ModifyCustomSection()
        {

            try
            {
                // Get the application configuration file.
                System.Configuration.Configuration config =
                        ConfigurationManager.OpenExeConfiguration(
                        ConfigurationUserLevel.None);

                CustomSection custSection =
                   config.Sections["CustomSection"] as CustomSection;

                // Change the section properties.
                custSection.FileName = "newName.txt";
                
                // Cause an exception.
                custSection.MaxUsers = custSection.MaxUsers + 100;

                if (!custSection.ElementInformation.IsLocked)
                    config.Save();
                else
                    Console.WriteLine(
                        "Section was locked, could not update.");
            }
            catch (ConfigurationErrorsException err)
            {

                string msg = err.Message;
                Console.WriteLine("Message: {0}", msg);

                string fileName = err.Filename;
                Console.WriteLine("Filename: {0}", fileName);

                int lineNumber = err.Line;
                Console.WriteLine("Line: {0}", lineNumber.ToString());

                string bmsg = err.BareMessage;
                Console.WriteLine("BareMessage: {0}", bmsg);

                string source = err.Source;
                Console.WriteLine("Source: {0}", source);

                string st = err.StackTrace;
                Console.WriteLine("StackTrace: {0}", st);

            }
        }

        static void Main(string[]
 args)
        {
            ModifyCustomSection();
        }

    
    }
}

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

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <section name="CustomSection" type="Samples.AspNet.CustomSection, 
      ConfigurationErrorsException, Version=1.0.0.0, Culture=neutral, 
      PublicKeyToken=null" allowDefinition="Everywhere" 
      allowExeDefinition="MachineToApplication" 
      restartOnExternalChanges="true" />
  </configSections>
  <CustomSection fileName="default.txt" maxUsers="10" />
</configuration>
継承階層継承階層
System.Object
   System.Exception
     System.SystemException
       System.Configuration.ConfigurationException
        System.Configuration.ConfigurationErrorsException
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照


このページでは「.NET Framework クラス ライブラリ リファレンス」からConfigurationErrorsException クラスを検索した結果を表示しています。
Weblioに収録されているすべての辞書からConfigurationErrorsException クラスを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からConfigurationErrorsException クラス を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「ConfigurationErrorsException クラス」の関連用語

ConfigurationErrorsException クラスのお隣キーワード
検索ランキング

   

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



ConfigurationErrorsException クラスのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

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

©2025 GRAS Group, Inc.RSS