RoleManagerSection 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
定義用於支援 Web 應用程式角色管理基礎結構的組態設定。 此類別無法獲得繼承。
public ref class RoleManagerSection sealed : System::Configuration::ConfigurationSection
public sealed class RoleManagerSection : System.Configuration.ConfigurationSection
type RoleManagerSection = class
inherit ConfigurationSection
Public NotInheritable Class RoleManagerSection
Inherits ConfigurationSection
- 繼承
範例
本節提供兩個程式代碼範例。 第一個示範如何以宣告方式指定類別數個 RoleManagerSection 屬性的值。 第二個示範如何使用 RoleManagerSection 類型。
下列組態檔範例示範如何以宣告方式指定類別數個 RoleManagerSection 屬性的值。
<system.web>
<roleManager
enabled="false"
cacheRolesInCookie="false"
cookieName=".ASPXROLES" cookieTimeout="30"
cookiePath="/" cookieRequireSSL="false"
cookieSlidingExpiration="true" createPersistentCookie="false"
cookieProtection="All"
defaultProvider="AspNetSqlRoleProvider"
maxCachedResults="25" >
<providers>
<add
name="AspNetSqlRoleProvider"
connectionStringName="LocalSqlServer"
applicationName="/"
type="System.Web.Security.SqlRoleProvider, System.Web,
Version=2.0.3600.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a" />
<add
name="AspNetWindowsTokenRoleProvider"
applicationName="/"
type="System.Web.Security.WindowsTokenRoleProvider, System.Web,
Version=2.0.3600.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a" />
</providers>
</roleManager>
</system.web>
下列程式代碼範例示範如何使用 RoleManagerSection 類型。
#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 UsingRoleManagerSection
{
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.
RoleManagerSection configSection =
(RoleManagerSection)config.GetSection("system.web/roleManager");
// 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 CacheRolesInCookie property.
Console.WriteLine("CacheRolesInCookie: {0}",
configSection.CacheRolesInCookie);
// Set CacheRolesInCookie property.
configSection.CacheRolesInCookie = false;
// Display CookieName property.
Console.WriteLine("CookieName: {0}", configSection.CookieName);
// Set CookieName property.
configSection.CookieName = ".ASPXROLES";
// Display CookiePath property.
Console.WriteLine("CookiePath: {0}", configSection.CookiePath);
// Set CookiePath property.
configSection.CookiePath = "/";
// Display CookieProtection property.
Console.WriteLine("CookieProtection: {0}",
configSection.CookieProtection);
// Set CookieProtection property.
configSection.CookieProtection =
System.Web.Security.CookieProtection.All;
// Display CookieRequireSSL property.
Console.WriteLine("CookieRequireSSL: {0}",
configSection.CookieRequireSSL);
// Set CookieRequireSSL property.
configSection.CookieRequireSSL = false;
// Display CookieSlidingExpiration property.
Console.WriteLine("CookieSlidingExpiration: {0}",
configSection.CookieSlidingExpiration);
// Set CookieSlidingExpiration property.
configSection.CookieSlidingExpiration = true;
// Display CookieTimeout property.
Console.WriteLine("CookieTimeout: {0}", configSection.CookieTimeout);
// Set CookieTimeout property.
configSection.CookieTimeout = TimeSpan.FromMinutes(30);
// Display CreatePersistentCookie property.
Console.WriteLine("CreatePersistentCookie: {0}",
configSection.CreatePersistentCookie);
// Set CreatePersistentCookie property.
configSection.CreatePersistentCookie = false;
// Display DefaultProvider property.
Console.WriteLine("DefaultProvider: {0}",
configSection.DefaultProvider);
// Set DefaultProvider property.
configSection.DefaultProvider = "AspNetSqlRoleProvider";
// Display Domain property.
Console.WriteLine("Domain: {0}", configSection.Domain);
// Set Domain property.
configSection.Domain = "";
// Display Enabled property.
Console.WriteLine("Enabled: {0}", configSection.Enabled);
// Set Enabled property.
configSection.Enabled = false;
// 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 UsingRoleManagerSection
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.RoleManagerSection = _
CType(config.GetSection("system.web/roleManager"), _
System.Web.Configuration.RoleManagerSection)
' 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 CacheRolesInCookie property.
Console.WriteLine("CacheRolesInCookie: {0}", _
configSection.CacheRolesInCookie)
' Set CacheRolesInCookie property.
configSection.CacheRolesInCookie = False
' Display CookieName property.
Console.WriteLine("CookieName: {0}", configSection.CookieName)
' Set CookieName property.
configSection.CookieName = ".ASPXROLES"
' Display CookiePath property.
Console.WriteLine("CookiePath: {0}", configSection.CookiePath)
' Set CookiePath property.
configSection.CookiePath = "/"
' Display CookieProtection property.
Console.WriteLine("CookieProtection: {0}", _
configSection.CookieProtection)
' Set CookieProtection property.
configSection.CookieProtection = _
System.Web.Security.CookieProtection.All
' Display CookieRequireSSL property.
Console.WriteLine("CookieRequireSSL: {0}", _
configSection.CookieRequireSSL)
' Set CookieRequireSSL property.
configSection.CookieRequireSSL = False
' Display CookieSlidingExpiration property.
Console.WriteLine("CookieSlidingExpiration: {0}", _
configSection.CookieSlidingExpiration)
' Set CookieSlidingExpiration property.
configSection.CookieSlidingExpiration = True
' Display CookieTimeout property.
Console.WriteLine("CookieTimeout: {0}", configSection.CookieTimeout)
' Set CookieTimeout property.
configSection.CookieTimeout = TimeSpan.FromMinutes(30)
' Display CreatePersistentCookie property.
Console.WriteLine("CreatePersistentCookie: {0}", _
configSection.CreatePersistentCookie)
' Set CreatePersistentCookie property.
configSection.CreatePersistentCookie = False
' Display DefaultProvider property.
Console.WriteLine("DefaultProvider: {0}", _
configSection.DefaultProvider)
' Set DefaultProvider property.
configSection.DefaultProvider = "AspNetSqlRoleProvider"
' Display Domain property.
Console.WriteLine("Domain: {0}", configSection.Domain)
' Set Domain property.
configSection.Domain = ""
' Display Enabled property.
Console.WriteLine("Enabled: {0}", configSection.Enabled)
' Set CookieName property.
configSection.Enabled = False
' 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
備註
類別 RoleManagerSection 提供一種方式,以程式設計方式存取和修改組態檔區 roleManager
段的內容。
建構函式
RoleManagerSection() |
使用預設值初始化 RoleManagerSection 類別的新執行個體。 |