MembershipSection 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
定義組態設定,以支援設定和管理成員細節的基礎結構。 此類別無法獲得繼承。
public ref class MembershipSection sealed : System::Configuration::ConfigurationSection
public sealed class MembershipSection : System.Configuration.ConfigurationSection
type MembershipSection = class
inherit ConfigurationSection
Public NotInheritable Class MembershipSection
Inherits ConfigurationSection
- 繼承
範例
這個範例示範如何針對 區段的 membership
數個屬性以宣告方式指定值,而這個屬性也可以當做 類別的成員 MembershipSection 存取。
下列組態檔範例示範如何以宣告方式指定 membership
區段的值。
<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>
下列程式碼範例示範如何使用 類別 MembershipSection 。
#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.HMACSHA256.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();
}
}
}
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.HMACSHA256.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
備註
類別 MembershipSection 提供一種方式,以程式設計方式存取和修改 membership
組態檔中的 區段。
建構函式
MembershipSection() |
初始化 MembershipSection 類別的新執行個體。 |