Ich habe verschiedene individuelle Methoden, die alle die gleichen Funktionen ausführen müssen, bevor Sie mit einer eigenen Implementierung fortfahren. Jetzt könnte ich diese Funktionen in jeder Methode implementieren, aber ich frage mich, ob es eine Möglichkeit gibt, attributes
auszunutzen, um dies zu tun? Als ein sehr einfaches Beispiel müssen alle Netzwerkverbindungen nach einer Netzwerkverbindung suchen.Verwenden von Attributen zum Aufrufen von Methoden
public void GetPage(string url)
{
if(IsNetworkConnected())
...
else
...
}
Dies funktionieren würde, aber ich würde die IsNetworkConnected
Methode für jede Methode aufrufen, die das Netzwerk verwendet und individuell zu behandeln. Stattdessen würde Ich mag diesen
[NetworkCall]
public void GetPage(string url)
{
...
}
tun, wenn das Netzwerk nicht verfügbar ist, wird eine Fehler-Methode aufgerufen, statt und GetPage
wird ignoriert, andernfalls wird GetPage
aufgerufen.
Das klingt sehr nach Aspect Orientated Programming, aber ich möchte nicht ein ganzes Framework für ein paar Anrufe implementieren. Dies ist mehr eine Lernübung als eine Implementierung, also war ich neugierig, wie so etwas am besten umgesetzt werden könnte.
Was ist mit Vererbung?Machen Sie alle von einer Basis "Netzwerk" -Klasse oder etwas ähnliches ableiten. – gdoron