2016-05-13 7 views
3

ich das C# spec über <permission> Tag mit dieser Syntax zu lesen:Auf den <permission> Tag

<permission cref="member">description</permission> 

Es wird gesagt, dass:

Mit diesem Tag kann die Sicherheit Zugänglichkeit eines Mitglied sein dokumentiert, wo cref="member" ist der Name eines Mitglieds, während description ist die Beschreibung des Zugriffs auf das Mitglied.

So konnte ich argumentieren, dass so etwas wie dies gültig sein könnte:

/// <permission cref="foo">foo is not accessible</permission> 
private void foo() {} 

jedoch in der Spezifikation gibt das folgende Beispiel ist:

/// <permission cref="System.Security.PermissionSet">Everyone can 
/// access this method.</permission> 
public static void Test() { } 

Wenn cref das Element ist, das sein muss, dokumentiert für die Erreichbarkeit was macht System.Security.PermissionSet damit?

Wirklich verstehe ich nicht die Spezifikation Beispiel !!!

Antwort

2

I denken Sie, die entwickelt wurde, um Codezugriffsicherheitsanforderungen einer bestimmten Methode \ Klasse zu dokumentieren. Zum Beispiel:

/// <summary> 
/// Do stuff 
/// </summary> 
/// <permission cref="PermissionSet">Caller should have full trust</permission> 
[PermissionSet(SecurityAction.LinkDemand, Name = "FullTrust")]   
public void DoStuff() { 

} 

Hier fordern wir volle Vertrauenserlaubnis, und das sagen wir explizit in der Dokumentation unserer Methode. Auch dies berücksichtigt:

/// <summary> 
/// Do stuff 2 
/// </summary> 
/// <permission cref="FileIOPermission">Caller should have unrestricted IO access</permission> 
[FileIOPermission(SecurityAction.Demand, Unrestricted = true)] 
public void DoStuff2() { 

} 

Hier fordern wir spezifischen FileIOPermission (nicht Berechtigungssatz), und so stellen wir fest, dass ausdrücklich in der Dokumentation.

Dies ist sicherlich nicht zu dokumentieren Zugänglichkeit (public \ private) eines Mitglieds - warum das überhaupt? Barrierefreiheit ist Teil der Definition der Funktion \ class und muss nicht dokumentiert werden.

Verwandte Themen