다음을 통해 공유


SimpleDelegatedModuleProvider.SetChildDelegationState 메서드

정의

지정된 경로의 모든 자식 구성에 대해 지정된 위임 상태를 설정합니다.

public:
 override void SetChildDelegationState(System::String ^ path, Microsoft::Web::Management::Server::DelegationState ^ state);
public override void SetChildDelegationState (string path, Microsoft.Web.Management.Server.DelegationState state);
override this.SetChildDelegationState : string * Microsoft.Web.Management.Server.DelegationState -> unit
Public Overrides Sub SetChildDelegationState (path As String, state As DelegationState)

매개 변수

path
String

호출 호스트의 경로입니다.

state
DelegationState

DelegationState 설정할 개체입니다.

예외

pathnull이거나 비어 있는 경우

path 에는 "/" 문자가 포함됩니다.

예제

다음 예제에서는 이 메서드를 재정의하고 기본 클래스 코드를 복제합니다.

public override void SetChildDelegationState(string path,
    DelegationState state) {

    if (String.IsNullOrEmpty(path)) {
        throw new ArgumentNullException("path");
    }
    if (path.IndexOf('/') != -1) {
        throw new InvalidOperationException(
            "Cannot retrieve the delegation state " +
             "for paths that contain '/'.");
    }

    AdministrationModule currentModule =
        ManagementUnit.Administration.Modules[Name];

    // Get the management administration configuration 
    // for the delegated path.
    ManagementAdministrationConfiguration
        delegatedAdministration =
        ManagementUnit.Administration.GetDelegatedScope(path);
    AdministrationModuleCollection delegatedModules
        = delegatedAdministration.Modules;

    if ((state == ParentDelgateState) ||
        (state == ReadWriteDelegationState) ||
        (state == ReadOnlyDelegationState)) {

        delegatedModules.Add(currentModule.Name);
    } else if (state == NoneDelegationState) {
        if (currentModule != null) {
            delegatedModules.Remove(currentModule.Name);
        }
    }
} 

적용 대상