次の方法で共有


GacMembershipCondition.FromXml メソッド

定義

指定した XML エンコーディングを使用して、セキュリティ オブジェクトを再構築します。

オーバーロード

FromXml(SecurityElement)

指定した XML エンコーディングを使用して、セキュリティ オブジェクトを再構築します。

FromXml(SecurityElement, PolicyLevel)

指定した XML エンコーディングを使用し、ポリシー レベル コンテキストを指定して、セキュリティ オブジェクトを再構築します。

FromXml(SecurityElement)

ソース:
GacMembershipCondition.cs
ソース:
GacMembershipCondition.cs
ソース:
GacMembershipCondition.cs

指定した XML エンコーディングを使用して、セキュリティ オブジェクトを再構築します。

public:
 virtual void FromXml(System::Security::SecurityElement ^ e);
public void FromXml (System.Security.SecurityElement e);
abstract member FromXml : System.Security.SecurityElement -> unit
override this.FromXml : System.Security.SecurityElement -> unit
Public Sub FromXml (e As SecurityElement)

パラメーター

e
SecurityElement

セキュリティ オブジェクトの再構築に使用する XML エンコーディングを含む SecurityElement

実装

例外

enullです。

e が有効なメンバーシップ条件要素ではありません。

次のコード例は、 メソッドの使用方法を FromXml 示しています。 この例は、 クラスに対して提供されるより大きな例の GacMembershipCondition 一部です。

GacMembershipCondition ^ Gac1 = gcnew GacMembershipCondition;
GacMembershipCondition ^ Gac2 = gcnew GacMembershipCondition;

// Roundtrip a GacMembershipCondition to and from an XML encoding.
Gac2->FromXml(Gac1->ToXml());
bool result = Gac2->Equals(Gac1);
if (result)
{
    Console::WriteLine("Result of ToXml() = {0}", Gac2->ToXml());
    Console::WriteLine(
        "Result of ToFromXml roundtrip = {0}", Gac2);
}
else
{
    Console::WriteLine(Gac2->ToString());
    Console::WriteLine(Gac1->ToString());
    return false;
}
GacMembershipCondition Gac1 = new GacMembershipCondition();
GacMembershipCondition Gac2 = new GacMembershipCondition();

// Roundtrip a GacMembershipCondition to and from an XML encoding.
Gac2.FromXml(Gac1.ToXml());
bool result = Gac2.Equals(Gac1);
if (result)
{
    Console.WriteLine(
        "Result of ToXml() = " + Gac2.ToXml().ToString());
    Console.WriteLine(
        "Result of ToFromXml roundtrip = " + Gac2.ToString());
}
else
{
    Console.WriteLine(Gac2.ToString());
    Console.WriteLine(Gac1.ToString());
    return false;
}
Dim Gac1 As New GacMembershipCondition
Dim Gac2 As New GacMembershipCondition

' Roundtrip a GacMembershipCondition to and from an XML encoding.
Gac2.FromXml(Gac1.ToXml())
Dim result As Boolean = Gac2.Equals(Gac1)
If result Then
    Console.WriteLine(("Result of ToXml() = " & _ 
        Gac2.ToXml().ToString()))
    Console.WriteLine(("Result of ToFromXml roundtrip = " & _ 
        Gac2.ToString()))
Else
    Console.WriteLine(Gac2.ToString())
    Console.WriteLine(Gac1.ToString())
    Return False
End If

注釈

メソッドはFromXml、 クラスによって定義された XML エンコードから をSecurityElement再構築GacMembershipConditionします。 メソッドを ToXml 使用して、含まれる状態情報を XML エンコードします GacMembershipCondition

適用対象

FromXml(SecurityElement, PolicyLevel)

ソース:
GacMembershipCondition.cs
ソース:
GacMembershipCondition.cs
ソース:
GacMembershipCondition.cs

指定した XML エンコーディングを使用し、ポリシー レベル コンテキストを指定して、セキュリティ オブジェクトを再構築します。

public:
 virtual void FromXml(System::Security::SecurityElement ^ e, System::Security::Policy::PolicyLevel ^ level);
public void FromXml (System.Security.SecurityElement e, System.Security.Policy.PolicyLevel level);
abstract member FromXml : System.Security.SecurityElement * System.Security.Policy.PolicyLevel -> unit
override this.FromXml : System.Security.SecurityElement * System.Security.Policy.PolicyLevel -> unit
Public Sub FromXml (e As SecurityElement, level As PolicyLevel)

パラメーター

e
SecurityElement

セキュリティ オブジェクトの再構築に使用する XML エンコーディングを含む SecurityElement

level
PolicyLevel

PolicyLevel 参照を解決するための NamedPermissionSet コンテキスト。

実装

例外

enullです。

e が有効なメンバーシップ条件要素ではありません。

次のコード例は、 メソッドの使用方法を FromXml 示しています。 この例は、 クラスに対して提供されるより大きな例の GacMembershipCondition 一部です。

GacMembershipCondition ^ Gac3 = gcnew GacMembershipCondition;
GacMembershipCondition ^ Gac4 = gcnew GacMembershipCondition;
IEnumerator^ policyEnumerator = SecurityManager::PolicyHierarchy();
while (policyEnumerator->MoveNext())
{
    PolicyLevel^ currentLevel = 
        dynamic_cast<PolicyLevel^>(policyEnumerator->Current);
    if (currentLevel->Label->Equals("Machine"))
    {
        Console::WriteLine("Result of ToXml(level) = {0}", 
            Gac3->ToXml(currentLevel));
        Gac4->FromXml(Gac3->ToXml(), currentLevel);
        Console::WriteLine(
            "Result of FromXml(element, level) = {0}", Gac4);
    }
}
GacMembershipCondition Gac3 = new GacMembershipCondition();
GacMembershipCondition Gac4 = new GacMembershipCondition();
IEnumerator policyEnumerator = SecurityManager.PolicyHierarchy();
while (policyEnumerator.MoveNext())
{
    PolicyLevel currentLevel = 
        (PolicyLevel)policyEnumerator.Current;
    if (currentLevel.Label == "Machine")
    {
        Console.WriteLine("Result of ToXml(level) = " + 
            Gac3.ToXml(currentLevel));
        Gac4.FromXml(Gac3.ToXml(), currentLevel);
        Console.WriteLine("Result of FromXml(element, level) = " + 
            Gac4.ToString());
    }
}
Dim Gac3 As New GacMembershipCondition
Dim Gac4 As New GacMembershipCondition
Dim policyEnumerator As IEnumerator = _
    SecurityManager.PolicyHierarchy()
While policyEnumerator.MoveNext()
    Dim currentLevel As PolicyLevel = _
        CType(policyEnumerator.Current, PolicyLevel)
    If currentLevel.Label = "Machine" Then
        Console.WriteLine(("Result of ToXml(level) = " & _
            Gac3.ToXml(currentLevel).ToString()))
        Gac4.FromXml(Gac3.ToXml(), currentLevel)
        Console.WriteLine(("Result of FromXml(element, level) = " _
            & Gac4.ToString()))
    End If
End While

注釈

ポリシー レベル コンテキストは、名前付きアクセス許可セット参照を解決するために提供されます。 たとえば、コード グループはポリシー レベルを使用して名前付きアクセス許可セットを検索します。

適用対象