Ist es möglich, eine Attributverwendung auf nur geschützte und öffentliche Variablen zu beschränken? Ich möchte nur auf private Variablen beschränken.Einschränken von Attributverwendungen nur für öffentliche und geschützte Variablen C#
4
A
Antwort
7
Nein, das geht nicht. Sie können die Verwendung von Attributen nur basierend auf dem Typ des Ziels beschränken, nicht auf anderen.
[AttributeUsage(AttributeTargets.Method)]
public class MethodOnlyAttribute : Attribute {
}
4
Nach meinem besten Wissen können Sie nicht. Die AttributeTargets Aufzählung listet auf welche Anwendungselemente Sie die Attributverwendung beschränken können.
5
du mit PostSharp tun können, hier ist ein Beispiel für ein Feld, das nur zu einem öffentlichen oder geschützten Bereich angewendet werden kann:
[Serializable]
[AttributeUsage(AttributeTargets.Field)]
public class MyAttribute : OnFieldAccessAspect
{
public override bool CompileTimeValidate(System.Reflection.FieldInfo field)
{
if (field.IsPublic || field.IsFamily)
{
throw new Exception("Attribute can only be applied to Public or Protected fields");
}
return true;
}
}
Verwandte Themen
- 1. MethodInfo nur für geschützte und öffentliche Methoden abrufen?
- 2. Öffentliche, private und geschützte Zugriffsqualifizierer für D-Klassen
- 3. Unit Testing C# geschützte Methoden
- 4. C#: Benennungsregeln für geschützte Mitgliederfelder
- 5. Visual Studio Suchzeichenfolge für öffentliche Variablen?
- 6. Wann sterben Variablen für öffentliche Mitglieder ab?
- 7. Anmeldeformular und geschützte Seiten nur für eingeloggte Benutzer?
- 8. Antwort? und geschützte Methoden
- 9. C# - wann öffentliche int virtuellen zu verwenden, und wann nur öffentliche int
- 10. Übergabe von geänderten Variablen nur in C++
- 11. "geschützte" Methoden in C#?
- 12. Gleichzeitige private und öffentliche Vererbung in C++
- 13. Zwei öffentliche statische Variablen mit unterschiedlichen Werten
- 14. Warum hat java.awt.Dimension öffentliche Variablen?
- 15. Öffentliche Variablen in Python-Klassen?
- 16. C++ öffentliche Funktion Syntaxfehler
- 17. C#, Unveränderlichkeit und öffentliche readonly Felder
- 18. Geschützte und private Methoden in Rails
- 19. Geschützte Datenelemente und Datenfunktionen
- 20. Geschützte Methoden in Objective-C
- 21. Wie auf geschützte Variablen eines Kindes zugreifen
- 22. Öffentliche Eigenschaften und private Mitglieder C#
- 23. Nicht öffentliche Mitglieder für C# -Schnittstellen
- 24. Sollte ich Accessor-Methoden/Getter Setter für öffentliche/geschützte Komponenten in einem Formular bereitstellen?
- 25. Bearbeiten von Variablen für eine kompilierte C# Anwendung
- 26. PHPDoc: geschützte Methode für Eigenschaft beschreiben
- 27. Bildgröße nur beim Hochladen in WordPress einschränken
- 28. Einschränken des WCF-Dienstzugriffs auf nur localhost
- 29. Einschränken von PHP-Sitzungsvariablen
- 30. Warum verwendet MonoTouch.Dialog öffentliche Felder für einige Elementoptionen und öffentliche Eigenschaften für andere?
Wie Mehrdad erklärt, man kann das nicht tun. Können Sie uns sagen, warum Sie Attribute auf solche Weise einschränken wollen? Können Sie uns Ihren Verwendungszweck nennen? – SolutionYogi