WebPartsSection 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
구성 파일 섹션에 webParts 프로그래밍 방식으로 액세스할 수 있도록 합니다. 이 클래스는 상속할 수 없습니다.
public ref class WebPartsSection sealed : System::Configuration::ConfigurationSection
public sealed class WebPartsSection : System.Configuration.ConfigurationSection
type WebPartsSection = class
inherit ConfigurationSection
Public NotInheritable Class WebPartsSection
Inherits ConfigurationSection
- 상속
예제
이 예제에서는 클래스의 webParts 멤버로 액세스할 수도 있는 섹션의 여러 특성에 WebPartsSection 대해 선언적으로 값을 지정하는 방법을 보여 줍니다.
다음 구성 파일 예제에서는 섹션에 대해 선언적으로 값을 지정하는 방법을 보여 있습니다 webParts .
<system.web>
<webParts>
<personalization
defaultProvider=" AspNetSqlPersonalizationProvider ">
<!-- Providers may only be defined at the
application level -->
<providers>
<add name="AspNetSqlPersonalizationProvider"
type="System.Web.UI.WebControls.WebParts.SqlPersonalizationProvider"
connectionStringName="LocalSqlServer"
applicationName="/" />
</providers>
<authorization>
<deny users="*" verbs="enterSharedScope" />
<allow users="Admin" verbs="modifyState" />
</authorization>
</personalization>
<transformers>
<add name="RowToFieldTransformer"
type="System.Web.UI.WebControls.WebParts.RowToFieldTransformer" />
<add name="RowToFilterTransformer"
type="System.Web.UI.WebControls.WebParts.RowToFilterTransformer" />
<add name="RowToParametersTransformer"
type="System.Web.UI.WebControls.WebParts.RowToParametersTransformer" />
</transformers>
</webParts>
</system.web>
다음 코드 예제에서는 클래스를 사용 하는 방법을 보여 줍니다 WebPartsSection .
using System;
using System.Collections;
using System.Collections.Specialized;
using System.IO;
using System.Text;
using System.Text.RegularExpressions;
using System.Configuration;
using System.Configuration.Provider;
using System.Web.Configuration;
namespace Samples.Aspnet.SystemWebConfiguration
{
// Accesses the System.Web.Configuration.WebPartsSection
// members selected by the user.
class UsingWebPartsSection
{
public static void Main()
{
// Process the System.Web.Configuration.WebPartsSectionobject.
try
{
// Get the Web application configuration.
Configuration configuration =
WebConfigurationManager.OpenWebConfiguration("/aspnet");
// Get the section.
WebPartsSection webPartsSection = (WebPartsSection)
configuration.Sections["system.web/webParts"];
// Add a Transfomer Info Object to the collection using a constructor.
webPartsSection.Transformers.Add(new TransformerInfo(
"RowToFilterTransformer",
"MyCustomTransformers.RowToFilterTransformer"));
// Show all TransformerInfo objects in the collection.
for (int ti = 0;
ti < webPartsSection.Personalization.Providers.Count; ti++)
{
Console.WriteLine(" #{0} Name={1} Type={2}", ti,
webPartsSection.Transformers[ti].Name,
webPartsSection.Transformers[ti].Type);
}
// Remove a TransformerInfo object by name.
webPartsSection.Transformers.Remove("RowToFilterTransformer");
// Remove a TransformerInfo object by index.
webPartsSection.Transformers.RemoveAt(0);
// Clear all TransformerInfo objects from the collection.
webPartsSection.Transformers.Clear();
// Get the current DefaultProvider property value.
Console.WriteLine(
"Current DefaultProvider value: '{0}'",
webPartsSection.Personalization.DefaultProvider);
// Set the DefaultProvider property.
webPartsSection.Personalization.DefaultProvider =
"ASPNetSQLPersonalizationProvider";
// Add a provider.
webPartsSection.Personalization.Providers.Add(
new ProviderSettings("CustomProvider",
"MyCustomProviders.Provider"));
// List current providers.
for (int pi = 0;
pi < webPartsSection.Personalization.Providers.Count; pi++)
{
Console.WriteLine(" #{0} Name={1} Type={2}", pi,
webPartsSection.Personalization.Providers[pi].Name,
webPartsSection.Personalization.Providers[pi].Type);
}
// Add an authorization.
AuthorizationRule ar =
new AuthorizationRule(AuthorizationRuleAction.Allow);
ar.Verbs.Add("ModifyState");
ar.Users.Add("Admin");
webPartsSection.Personalization.Authorization.Rules.Add(ar);
// List current authorizations.
for (int ai = 0;
ai < webPartsSection.Personalization.Authorization.Rules.Count;
ai++)
{
Console.WriteLine(" #{0}:", ai);
AuthorizationRule aRule =
webPartsSection.Personalization.Authorization.Rules[ai];
Console.WriteLine(" Verbs=");
foreach (string verb in aRule.Verbs)
Console.WriteLine(" * {0}", verb);
Console.WriteLine(" Roles=");
foreach (string role in aRule.Roles)
Console.WriteLine(" * {0}", role);
Console.WriteLine(" Users=");
foreach (string user in aRule.Users)
Console.WriteLine(" * {0}", user);
}
// Update if not locked.
if (!webPartsSection.IsReadOnly())
{
configuration.Save();
Console.WriteLine("** Configuration updated.");
}
else
{
Console.WriteLine("** Could not update, section is locked.");
}
}
catch (System.ArgumentException e)
{
// Unknown error.
Console.WriteLine(
"A invalid argument exception detected in UsingWebPartsSection Main. Check your");
Console.WriteLine("command line for errors.");
}
}
} // UsingWebPartsSection class end.
} // Samples.Aspnet.SystemWebConfiguration namespace end.
Imports System.Collections
Imports System.Collections.Specialized
Imports System.IO
Imports System.Text
Imports System.Text.RegularExpressions
Imports System.Configuration
Imports System.Web.Configuration
Namespace Samples.Aspnet.SystemWebConfiguration
' Accesses the System.Web.Configuration.WebPartsSection
' members selected by the user.
Class UsingWebPartsSection
Public Shared Sub Main()
' Process the System.Web.Configuration.WebPartsSectionobject.
Try
' Get the Web application configuration.
Dim configuration As System.Configuration.Configuration = _
WebConfigurationManager.OpenWebConfiguration("/aspnet")
' Get the section.
Dim webPartsSection As WebPartsSection = _
CType(configuration.Sections("system.web/webParts"), _
WebPartsSection)
' Add a Transfomer Info Object to the collection using a constructor.
webPartsSection.Transformers.Add(New TransformerInfo( _
"RowToFilterTransformer", _
"MyCustomTransformers.RowToFilterTransformer"))
' Show all TransformerInfo objects in the collection.
Dim ti As Integer
For ti = 0 To webPartsSection.Personalization.Providers.Count - 1
Console.WriteLine(" #{0} Name={1} Type={2}", ti, _
webPartsSection.Transformers(ti).Name, _
webPartsSection.Transformers(ti).Type)
Next
' Remove a TransformerInfo object by name.
webPartsSection.Transformers.Remove("RowToFilterTransformer")
' Remove a TransformerInfo object by index.
webPartsSection.Transformers.RemoveAt(0)
' Clear all TransformerInfo objects from the collection.
webPartsSection.Transformers.Clear()
' Get the current DefaultProvider property value.
Console.WriteLine( _
"Current DefaultProvider value: '{0}'", _
webPartsSection.Personalization.DefaultProvider)
' Set the DefaultProvider property.
webPartsSection.Personalization.DefaultProvider = _
"ASPNetSQLPersonalizationProvider"
' Add a provider.
webPartsSection.Personalization.Providers.Add( _
New ProviderSettings("CustomProvider", _
"MyCustomProviders.Provider"))
' List current providers.
Dim pi As Integer
For pi = 0 To webPartsSection.Personalization.Providers.Count - 1
Console.WriteLine(" #{0} Name={1} Type={2}", pi, _
webPartsSection.Personalization.Providers(pi).Name, _
webPartsSection.Personalization.Providers(pi).Type)
Next
' Add an authorization.
Dim ar As AuthorizationRule = _
New AuthorizationRule(AuthorizationRuleAction.Allow)
ar.Verbs.Add("ModifyState")
ar.Users.Add("Admin")
webPartsSection.Personalization.Authorization.Rules.Add(ar)
' List current authorizations.
Dim ai As Integer
For ai = 0 To _
webPartsSection.Personalization.Authorization.Rules.Count
Console.WriteLine(" #{0}:", ai)
Dim aRule As AuthorizationRule = _
webPartsSection.Personalization.Authorization.Rules(ai)
Console.WriteLine(" Verbs=")
Dim verb As String
For Each verb In aRule.Verbs
Console.WriteLine(" * {0}", verb)
Console.WriteLine(" Roles=")
Next
Dim role As String
For Each role In aRule.Roles
Console.WriteLine(" * {0}", role)
Console.WriteLine(" Users=")
Next
Dim user As String
For Each user In aRule.Users
Console.WriteLine(" * {0}", user)
Next
Next
' Update if not locked.
If Not webPartsSection.IsReadOnly() Then
configuration.Save()
Console.WriteLine("** Configuration updated.")
Else
Console.WriteLine("** Could not update, section is locked.")
End If
Catch e As System.ArgumentException
' Unknown error.
Console.WriteLine( _
"A invalid argument exception detected in UsingWebPartsSection Main. Check your")
Console.WriteLine("command line for errors.")
End Try
End Sub
End Class
End Namespace ' Samples.Aspnet.SystemWebConfiguration
설명
구성 파일 섹션에서는 webParts 웹 파트 개인 설정 공급자를 지정하고, 개인 설정 권한 부여를 설정하고, 웹 파트 연결에서 사용할 클래스를 확장하는 WebPartTransformer 사용자 지정 클래스를 추가할 수 있습니다.
생성자
| Name | Description |
|---|---|
| WebPartsSection() |
기본 설정을 사용하여 클래스의 새 인스턴스를 WebPartsSection 초기화합니다. |