Auf Englisch lesen

Freigeben über


ConfigurationElement.IsModified Methode

Definition

Gibt an, ob dieses Konfigurationselement geändert wurde, seit es zuletzt gespeichert oder geladen wurde, wenn es in einer abgeleiteten Klasse implementiert wurde.

protected virtual bool IsModified ();
protected internal virtual bool IsModified ();

Gibt zurück

true, wenn das Element geändert wurde, andernfalls false.

Beispiele

Das folgende Beispiel zeigt, wie Sie erweitern IsModified.

protected override bool IsModified()
{
    bool ret = base.IsModified();
    // You can enter your custom processing code here.
    return ret;
}

Die im vorherigen Beispiel gezeigte Methode wird aufgerufen, wenn ein Konfigurationselement geändert wird, wie im folgenden Beispiel dargestellt.

// Show how to use IsModified.
// This method modifies the port property
// of the url element named Microsoft and
// saves the modification to the configuration
// file. This in turn will cause the overriden
// UrlConfigElement.IsModified() mathod to be called. 
static void ModifyElement()
{
    try
    {
        // Get the configuration file.
        System.Configuration.Configuration config =
            ConfigurationManager.OpenExeConfiguration(
            ConfigurationUserLevel.None);

        // Get the MyUrls section.
        UrlsSection myUrlsSection =
            config.GetSection("MyUrls") as UrlsSection;

        UrlsCollection elements = myUrlsSection.Urls;

        IEnumerator elemEnum =
            elements.GetEnumerator();

        int i = 0;
        while (elemEnum.MoveNext())
        {
            if (elements[i].Name == "Microsoft")
            {
                elements[i].Port = 1010;
                bool readOnly = elements[i].IsReadOnly();
                break;
            }
            i += 1;
        }

        if (!myUrlsSection.ElementInformation.IsLocked)
        {

            config.Save(ConfigurationSaveMode.Full);

            // This to obsolete the MyUrls cached 
            // section and read the updated version
            // from the configuration file.
            ConfigurationManager.RefreshSection("MyUrls");
        }
        else
            Console.WriteLine(
                "Section was locked, could not update.");
    }

    catch (ConfigurationErrorsException err)
    {
        Console.WriteLine("[ModifyElement: {0}]",
            err.ToString());
    }
}

Hinweise

Die IsModified -Methode bestimmt, ob dieses ConfigurationElement Objekt in die Konfigurationsdatei geschrieben wird, wenn die Save Methode aufgerufen wird. Wenn der Rückgabewert gleich false ist, wird davon ausgegangen, dass die Konfigurationsdatei den aktuellen Zustand des Elements darstellt.

Gibt standardmäßig zurücktrue, IsModified nachdem eine Eigenschaft über den Indexer auf dieses ConfigurationElement Objekt festgelegt wurde.

Überschreiben Sie die IsModified -Methode, um einen benutzerdefinierten Hinweis auf den Zustand dieses ConfigurationElement Elements bereitzustellen.

Gilt für: