次の方法で共有


SiteIdentityPermission.ToXml メソッド

アクセス許可とその現在の状態を表す XML エンコーディングを作成します。

Overrides Public Function ToXml() As SecurityElement Implements _   ISecurityEncodable.ToXml
[C#]
public override SecurityElement ToXml();
[C++]
public: SecurityElement* ToXml();
[JScript]
public override function ToXml() : SecurityElement;

戻り値

状態情報を含む、アクセス許可の XML エンコーディング。

実装

ISecurityEncodable.ToXml

使用例

 
' ToXml creates an XML encoding of the permission and its current state; FromXml reconstructs a 
' permission with the specified state from the XML encoding. 
Private Function ToFromXmlDemo() As Boolean

    Dim returnCodeCode As Boolean = True

    Dim site1 As [String]
    Dim siteIdPerm1, siteIdPerm2 As SiteIdentityPermission
    Dim successFlag As Boolean

    Dim siteGen1 As New SiteGenerator()
    Dim siteGen2 As New SiteGenerator()

    siteGen1.ResetIndex()
    While siteGen1.CreateSite(siteIdPerm1, site1, successFlag)
        If siteIdPerm1 Is Nothing Or successFlag = False Then
            GoTo ContinueWhile1
        End If
        siteGen2.ResetIndex()
        Console.WriteLine("**************************************************************************")
        Try
            siteIdPerm2 = New SiteIdentityPermission(PermissionState.None.ToString())
            siteIdPerm2.FromXml(siteIdPerm1.ToXml())
            Dim result As Boolean = siteIdPerm2.Equals(siteIdPerm1)
            If siteIdPerm2.IsSubsetOf(siteIdPerm1) AndAlso siteIdPerm1.IsSubsetOf(siteIdPerm2) Then
                Console.WriteLine(("Result of ToFromXml = " & siteIdPerm2.ToString()))
            Else
                Console.WriteLine(siteIdPerm2.ToString())
                Console.WriteLine(siteIdPerm1.ToString())
            End If
        Catch e As Exception
            Console.WriteLine(("ToFromXml failed. " & e.ToString()))
            GoTo ContinueWhile1
        End Try
ContinueWhile1:
    End While


    Return returnCodeCode
End Function 'ToFromXmlDemo


[C#] 
// ToXml creates an XML encoding of the permission and its current state; FromXml reconstructs a 
// permission with the specified state from the XML encoding. 
private bool ToFromXmlDemo()
{

    bool returnCodeCode = true;

    String site1;
    SiteIdentityPermission siteIdPerm1,siteIdPerm2;
    bool successFlag;

    SiteGenerator siteGen1 = new SiteGenerator();
    SiteGenerator siteGen2 = new SiteGenerator();
    
    siteGen1.ResetIndex();
    while(siteGen1.CreateSite(out siteIdPerm1, out site1, out successFlag)) 
    {
        if(siteIdPerm1 == null | successFlag == false) continue;
        siteGen2.ResetIndex();
        Console.WriteLine("**************************************************************************");
        try
        {            
            siteIdPerm2= new SiteIdentityPermission(PermissionState.None);
            siteIdPerm2.FromXml(siteIdPerm1.ToXml());
            bool result = siteIdPerm2.Equals(siteIdPerm1);
            if (siteIdPerm2.IsSubsetOf(siteIdPerm1)  && siteIdPerm1.IsSubsetOf(siteIdPerm2))
            {
                Console.WriteLine("Result of ToFromXml = " + siteIdPerm2.ToString());
            }
            else
            {
                Console.WriteLine(siteIdPerm2.ToString());
                Console.WriteLine(siteIdPerm1.ToString());
            }
        }
        catch(Exception e) {
            Console.WriteLine("ToFromXml failed. " + e);
            continue;
        }

    }


    return returnCodeCode;

}

[C++] 
// ToXml creates an XML encoding of the permission and its current state; FromXml reconstructs a
// permission with the specified state from the XML encoding.
bool ToFromXmlDemo() {

   bool returnCodeCode = true;

   String* site1;
   SiteIdentityPermission* siteIdPerm1, *siteIdPerm2;
   bool successFlag;

   SiteGenerator* siteGen1 = new SiteGenerator();
   SiteGenerator* siteGen2 = new SiteGenerator();

   siteGen1->ResetIndex();
   while(siteGen1->CreateSite(&siteIdPerm1, &site1, &successFlag)) {
      if (siteIdPerm1 == 0 || successFlag == false) continue;
      siteGen2->ResetIndex();
      Console::WriteLine(S"**************************************************************************");
      try {
         siteIdPerm2 = new SiteIdentityPermission(PermissionState::None);
         siteIdPerm2->FromXml(siteIdPerm1->ToXml());
         bool result = siteIdPerm2->Equals(siteIdPerm1);
         if (siteIdPerm2->IsSubsetOf(siteIdPerm1)  && siteIdPerm1->IsSubsetOf(siteIdPerm2)) {
            Console::WriteLine(S"Result of ToFromXml = {0}", siteIdPerm2);
         } else {
            Console::WriteLine(siteIdPerm2);
            Console::WriteLine(siteIdPerm1);
         }
      } catch (Exception* e) {
         Console::WriteLine(S"ToFromXml failed. {0}", e);
         continue;
      }

   }
   return returnCodeCode;
}

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

SiteIdentityPermission クラス | SiteIdentityPermission メンバ | System.Security.Permissions 名前空間