現在のアクセス許可のコピーを作成して返します。
Overrides Public Function Copy() As IPermission Implements _ IPermission.Copy
[C#]
public override IPermission Copy();
[C++]
public: IPermission* Copy();
[JScript]
public override function Copy() : IPermission;
戻り値
現在のアクセス許可のコピー。
実装
解説
アクセス許可のコピーは、リソースに対して、元のアクセス許可と同じアクセス権または同じサイト ID を表します。
使用例
'Copy creates and returns an identical copy of the current permission.
Private Function CopyDemo() 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 = CType(siteIdPerm1.Copy(), SiteIdentityPermission)
If Not (siteIdPerm2 Is Nothing) Then
Console.WriteLine(("The copy of " & siteIdPerm2.ToString() & " succeeded." & ControlChars.Lf))
End If
Catch e As Exception
Console.WriteLine(("The copy failed : " & siteIdPerm1.ToString() & e.ToString()))
GoTo ContinueWhile1
End Try
ContinueWhile1:
End While
Return returnCodeCode
End Function 'CopyDemo
[C#]
//Copy creates and returns an identical copy of the current permission.
private bool CopyDemo()
{
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 = (SiteIdentityPermission)siteIdPerm1.Copy();
if (siteIdPerm2 != null )
{
Console.WriteLine("The copy of " + siteIdPerm2.ToString() + " succeeded.\n");
}
}
catch(Exception e)
{
Console.WriteLine("The copy failed : " + siteIdPerm1.ToString() + e);
continue;
}
}
return returnCodeCode;
}
[C++]
//Copy creates and returns an identical copy of the current permission.
bool CopyDemo() {
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 = dynamic_cast<SiteIdentityPermission*>(siteIdPerm1->Copy());
if (siteIdPerm2 != 0) {
Console::WriteLine(S"The copy of {0} succeeded.\n", siteIdPerm2);
}
} catch (Exception* e) {
Console::WriteLine(S"The copy failed : {0}{1}", siteIdPerm1, 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 名前空間