Aktualisiert: November 2007
Definiert Konfigurationseinstellungen zur Unterstützung der Infrastruktur für das Konfigurieren und Verwalten von Mitgliedschaftsinformationen. Diese Klasse kann nicht geerbt werden.
Namespace:
System.Web.Configuration
Assembly:
System.Web (in System.Web.dll)
Visual Basic (Deklaration)
Public NotInheritable Class MembershipSection _
Inherits ConfigurationSection
Visual Basic (Verwendung)
Dim instance As MembershipSection
public sealed class MembershipSection : ConfigurationSection
public ref class MembershipSection sealed : public ConfigurationSection
public final class MembershipSection extends ConfigurationSection
public final class MembershipSection extends ConfigurationSection
Die MembershipSection-Klasse ermöglicht den programmgesteuerten Zugriff auf den membership-Abschnitt in einer Konfigurationsdatei und dessen programmgesteuerte Änderung.
In diesem Beispiel wird veranschaulicht, wie Sie deklarativ für mehrere Attribute des membership-Abschnitts Werte angeben, auf die auch als Member der MembershipSection-Klasse zugegriffen werden kann.
Im folgenden Beispiel für eine Konfigurationsdatei wird veranschaulicht, wie Sie deklarativ Werte für den membership-Abschnitt angeben.
<system.web>
<membership
defaultProvider="AspNetSqlMembershipProvider"
userIsOnlineTimeWindow="15">
<providers>
<add
name=" AspNetSqlMembershipProvider"
type="System.Web.Security.SqlMembershipProvider, System.Web,
Version=2.0.3600.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="LocalSqlServer"
passwordAttemptThreshold="5"
passwordAttemptWindow="10"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
applicationName="/"
requiresUniqueEmail="false"
passwordFormat="Hashed"
description="Stores and retrieves membership data from
the local Microsoft SQL Server database."
/>
</providers>
</membership>
</system.web>
Im folgenden Codebeispiel wird die Verwendung der MembershipSection-Klasse veranschaulicht.
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports System.Configuration
Imports System.Web
Imports System.Web.Configuration
Namespace Samples.Aspnet.SystemWebConfiguration
Class UsingMembershipSection
Public Shared Sub Main()
Try
' Set the path of the config file.
Dim configPath As String = ""
' Get the Web application configuration object.
Dim config As System.Configuration.Configuration = _
System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(configPath)
' Get the section related object.
Dim configSection As System.Web.Configuration.MembershipSection = _
CType(config.GetSection("system.web/membership"), _
System.Web.Configuration.MembershipSection)
' Display title and info.
Console.WriteLine("ASP.NET Configuration Info")
Console.WriteLine()
' Display Config details.
Console.WriteLine("File Path: {0}", _
config.FilePath)
Console.WriteLine("Section Path: {0}", _
configSection.SectionInformation.Name)
' Display Default Provider.
Console.WriteLine("DefaultProvider: {0}", _
configSection.DefaultProvider)
' Set Default Provider.
configSection.DefaultProvider = _
"AspNetSqlRoleProvider"
' Display HashAlgorithmType value.
Console.WriteLine("HashAlgorithmType: {0}", _
configSection.HashAlgorithmType)
' Set HashAlgorithmType value.
configSection.HashAlgorithmType = _
MachineKeyValidation.SHA1.ToString()
' Display UserIsOnlineTimeWindow value.
Console.WriteLine("UserIsOnlineTimeWindow: {0}", _
configSection.UserIsOnlineTimeWindow)
' Set UserIsOnlineTimeWindow value.
configSection.UserIsOnlineTimeWindow = _
TimeSpan.FromMinutes(15)
' Display the number of Providers.
Console.WriteLine("Providers Collection Count: {0}", _
configSection.Providers.Count)
' Display elements of the Providers collection property.
For Each providerItem As ProviderSettings In configSection.Providers()
Console.WriteLine()
Console.WriteLine("Provider Details:")
Console.WriteLine("Name: {0}", providerItem.Name)
Console.WriteLine("Type: {0}", providerItem.Type)
Next
' Update if not locked.
If Not configSection.SectionInformation.IsLocked Then
config.Save()
Console.WriteLine("** Configuration updated.")
Else
Console.WriteLine("** Could not update, section is locked.")
End If
Catch e As Exception
' Unknown error.
Console.WriteLine(e.ToString())
End Try
' Display and wait.
Console.ReadLine()
End Sub
End Class
End Namespace
#region Using directives
using System;
using System.Collections.Generic;
using System.Text;
using System.Configuration;
using System.Web;
using System.Web.Configuration;
#endregion
namespace Samples.Aspnet.SystemWebConfiguration
{
class UsingMembershipSection
{
static void Main(string[] args)
{
try
{
// Set the path of the config file.
string configPath = "";
// Get the Web application configuration object.
Configuration config = WebConfigurationManager.OpenWebConfiguration(configPath);
// Get the section related object.
MembershipSection configSection =
(MembershipSection)config.GetSection("system.web/membership");
// Display title and info.
Console.WriteLine("ASP.NET Configuration Info");
Console.WriteLine();
// Display Config details.
Console.WriteLine("File Path: {0}",
config.FilePath);
Console.WriteLine("Section Path: {0}",
configSection.SectionInformation.Name);
// Display Default Provider.
Console.WriteLine("DefaultProvider: {0}",
configSection.DefaultProvider);
// Set Default Provider.
configSection.DefaultProvider =
"AspNetSqlRoleProvider";
// Display HashAlgorithmType value.
Console.WriteLine("HashAlgorithmType: {0}",
configSection.HashAlgorithmType);
// Set HashAlgorithmType value.
configSection.HashAlgorithmType =
MachineKeyValidation.SHA1.ToString();
// Display UserIsOnlineTimeWindow value.
Console.WriteLine("UserIsOnlineTimeWindow: {0}",
configSection.UserIsOnlineTimeWindow);
// Set UserIsOnlineTimeWindow value.
configSection.UserIsOnlineTimeWindow =
TimeSpan.FromMinutes(15) ;
// Display the number of Providers.
Console.WriteLine("Providers Collection Count: {0}",
configSection.Providers.Count);
// Display elements of the Providers collection property.
foreach (ProviderSettings providerItem in configSection.Providers)
{
Console.WriteLine();
Console.WriteLine("Provider Details:");
Console.WriteLine("Name: {0}", providerItem.Name);
Console.WriteLine("Type: {0}", providerItem.Type);
}
// Update if not locked.
if (!configSection.SectionInformation.IsLocked)
{
config.Save();
Console.WriteLine("** Configuration updated.");
}
else
{
Console.WriteLine("** Could not update, section is locked.");
}
}
catch (Exception e)
{
// Unknown error.
Console.WriteLine(e.ToString());
}
// Display and wait.
Console.ReadLine();
}
}
}
System..::.Object
System.Configuration..::.ConfigurationElement
System.Configuration..::.ConfigurationSection
System.Web.Configuration..::.MembershipSection
Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98
.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
.NET Framework
Unterstützt in: 3.5, 3.0, 2.0
Referenz
Weitere Ressourcen