SiteMapSection 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
定义用于支持基础结构配置、存储和呈现站点导航的配置设置。 此类不能被继承。
public ref class SiteMapSection sealed : System::Configuration::ConfigurationSection
public sealed class SiteMapSection : System.Configuration.ConfigurationSection
type SiteMapSection = class
inherit ConfigurationSection
Public NotInheritable Class SiteMapSection
Inherits ConfigurationSection
- 继承
示例
此示例演示如何为节的 siteMap
多个属性以声明方式指定值,该属性也可以作为类的成员 SiteMapSection 进行访问。
以下配置文件示例演示如何以声明方式为 siteMap
节指定值。
<system.web>
<siteMap defaultProvider="XmlSiteMapReader" enabled="true">
<providers>
<clear />
<add
name="XmlSiteMapReader"
type="XmlSiteMapProvider, System.Web, Version=1.1.3300.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
siteMapFile="my.sitemap"
description="XmlSiteMapProvider that loads my.sitemap"/>
</providers>
</siteMap>
</system.web>
下面的代码示例演示如何使用该 SiteMapSection 类。
#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 UsingSiteMapSection
{
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.
SiteMapSection configSection =
(SiteMapSection)config.GetSection("system.web/siteMap");
// 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("Default Provider: {0}",
configSection.DefaultProvider);
// Set Default Provider.
configSection.DefaultProvider =
"SiteMapProviderName";
// Display Enabled value.
Console.WriteLine("Enabled: {0}", configSection.Enabled);
// Set Enabled value.
configSection.Enabled = true;
// 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 UsingSiteMapSection
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.SiteMapSection = _
CType(config.GetSection("system.web/siteMap"), _
System.Web.Configuration.SiteMapSection)
' 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("Default Provider: {0}", _
configSection.DefaultProvider)
' Set Default Provider.
configSection.DefaultProvider = "SiteMapProviderName"
' Display Enabled value.
Console.WriteLine("Enabled: {0}", configSection.Enabled)
' Set Enabled value.
configSection.Enabled = True
' 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
注解
该 SiteMapSection 类提供了一种以编程方式访问和修改配置文件 siteMap
部分内容的方法。
构造函数
SiteMapSection() |
使用默认设置初始化 SiteMapSection 类的新实例。 |