PolicyLevel.StoreLocation 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取存储策略文件的路径。
public:
property System::String ^ StoreLocation { System::String ^ get(); };
public string StoreLocation { get; }
member this.StoreLocation : string
Public ReadOnly Property StoreLocation As String
属性值
存储策略文件的路径,或者 null
(如果 PolicyLevel 没有存储位置)。
示例
以下代码演示如何显示策略级别的商店位置。 此代码示例是为 PolicyLevel 类提供的一个更大示例的一部分。
// Demonstrate the use of ResolvePolicy for passed in evidence.
void CheckEvidence( Evidence^ evidence )
{
// Display the code groups to which the evidence belongs.
Console::WriteLine( "ResolvePolicy for the given evidence." );
Console::WriteLine( "\tCurrent evidence belongs to the following code groups:" );
IEnumerator^ policyEnumerator = SecurityManager::PolicyHierarchy();
// Resolve the evidence at all the policy levels.
while ( policyEnumerator->MoveNext() )
{
PolicyLevel^ currentLevel = dynamic_cast<PolicyLevel^>(policyEnumerator->Current);
CodeGroup^ cg1 = currentLevel->ResolveMatchingCodeGroups( evidence );
Console::WriteLine( "\n\t{0} Level", currentLevel->Label );
Console::WriteLine( "\t\tCodeGroup = {0}", cg1->Name );
IEnumerator^ cgE1 = cg1->Children->GetEnumerator();
while ( cgE1->MoveNext() )
{
Console::WriteLine( "\t\t\tGroup = {0}", (dynamic_cast<CodeGroup^>(cgE1->Current))->Name );
}
Console::WriteLine( "\tStoreLocation = {0}", currentLevel->StoreLocation );
}
return;
}
// Demonstrate the use of ResolvePolicy for passed in evidence.
private static void CheckEvidence(Evidence evidence)
{
// Display the code groups to which the evidence belongs.
Console.WriteLine("ResolvePolicy for the given evidence.");
Console.WriteLine("\tCurrent evidence belongs to the following code groups:");
IEnumerator policyEnumerator = SecurityManager.PolicyHierarchy();
// Resolve the evidence at all the policy levels.
while (policyEnumerator.MoveNext())
{
PolicyLevel currentLevel = (PolicyLevel)policyEnumerator.Current;
CodeGroup cg1 = currentLevel.ResolveMatchingCodeGroups(evidence);
Console.WriteLine("\n\t" + currentLevel.Label + " Level");
Console.WriteLine("\t\tCodeGroup = " + cg1.Name);
IEnumerator cgE1 = cg1.Children.GetEnumerator();
while (cgE1.MoveNext())
{
Console.WriteLine("\t\t\tGroup = " + ((CodeGroup)cgE1.Current).Name);
}
Console.WriteLine("\tStoreLocation = " + currentLevel.StoreLocation);
}
return;
}
' Demonstrate the use of ResolvePolicy for passed in evidence.
Private Overloads Shared Sub CheckEvidence(ByVal evidence As Evidence)
' Display the code groups to which the evidence belongs.
Console.WriteLine("ResolvePolicy for the given evidence.")
Console.WriteLine(ControlChars.Tab + "Current evidence belongs to the following code groups:")
Dim policyEnumerator As IEnumerator = SecurityManager.PolicyHierarchy()
' Resolve the evidence at all the policy levels.
While policyEnumerator.MoveNext()
Dim currentLevel As PolicyLevel = CType(policyEnumerator.Current, PolicyLevel)
Dim cg1 As CodeGroup = currentLevel.ResolveMatchingCodeGroups(evidence)
Console.WriteLine((ControlChars.Lf + ControlChars.Tab + currentLevel.Label + " Level"))
Console.WriteLine((ControlChars.Tab + ControlChars.Tab + "CodeGroup = " + cg1.Name))
Dim cgE1 As IEnumerator = cg1.Children.GetEnumerator()
While cgE1.MoveNext()
Console.WriteLine((ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + "Group = " + CType(cgE1.Current, CodeGroup).Name))
End While
Console.WriteLine((ControlChars.Tab + "StoreLocation = " + currentLevel.StoreLocation))
End While
Return
End Sub