HostSecurityManager.GenerateAppDomainEvidence(Type) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
針對應用程式定義域要求特定辨識項型別。
public:
virtual System::Security::Policy::EvidenceBase ^ GenerateAppDomainEvidence(Type ^ evidenceType);
public virtual System.Security.Policy.EvidenceBase GenerateAppDomainEvidence (Type evidenceType);
abstract member GenerateAppDomainEvidence : Type -> System.Security.Policy.EvidenceBase
override this.GenerateAppDomainEvidence : Type -> System.Security.Policy.EvidenceBase
Public Overridable Function GenerateAppDomainEvidence (evidenceType As Type) As EvidenceBase
參數
- evidenceType
- Type
辨識項型別。
傳回
要求的應用程式定義域辨識項。
範例
下列範例示範如何覆寫 ProvideAppDomainEvidence 自定義主機安全性管理員的方法。 這個範例是提供給 類別之較大範例的 HostSecurityManager 一部分。
public override Evidence ProvideAppDomainEvidence(Evidence evidence)
{
Console.WriteLine("Provide evidence for the " + AppDomain.CurrentDomain.FriendlyName + " AppDomain.");
if (evidence == null)
return null;
evidence.AddHostEvidence(new CustomEvidenceType());
return evidence;
}
Public Overrides Function ProvideAppDomainEvidence(ByVal evidence As Evidence) As Evidence
Console.WriteLine("Provide evidence for the " + AppDomain.CurrentDomain.FriendlyName + " AppDomain.")
If evidence Is Nothing Then
Return Nothing
End If
evidence.AddHostEvidence(New CustomEvidenceType())
Return evidence
End Function 'ProvideAppDomainEvidence
備註
這個方法可由衍生類別覆寫。 基底實作會傳 null
回 。
當目前 AppDomain需要指定型別的辨識項時,Common Language Runtime 會呼叫這個方法。 傳回的值會當做主機提供的辨識項使用,並儲存在 Evidence 屬性的集合中 CurrentDomain 。 您可以使用 Evidence.GetAssemblyEvidence 方法,從集合中取得產生的辨識項。
若要取得這個方法的Flags回呼,主機必須在 屬性中指定 HostAppDomainEvidence 旗標。
這個產生辨識項的方法可讓主機延遲產生 辨識項, AppDomain 直到需要辨識項為止。 在 .NET Framework 3.5 版和更早版本中,必須覆ProvideAppDomainEvidence寫 方法,在載入時提供AppDomain辨識項。 我們建議您使用 GenerateAppDomainEvidence 來提供辨識項,而不是覆寫 ProvideAppDomainEvidence。
方法 GenerateAppDomainEvidence 只會針對主機在 方法覆 GetHostSuppliedAppDomainEvidenceTypes 寫中指定的辨識項類型呼叫回 。
的 null
傳回值表示主機無法產生這個特定類型的辨識項。