Ich bekomme irgendwie gemischte Nachrichten darüber, so hoffe ich, dass jemand für mich dies klären kann.Wann gemeinsame Methoden in .NET zu verwenden
Soll ich Methoden geteilt werden unter Verwendung von/Funktionen in der folgenden Situation:
Ich habe eine generische Klasse namens „Person“. Diese Klasse repräsentiert eine Person in der Datenbank.
Ich habe eine Manager-Klasse namens "PersonManager". Diese Klasse enthält Methoden, die einzelne Personenobjekte hinzufügen, aktualisieren, löschen. Es gibt auch eine Methode, nach Personen aus der Datenbank zu suchen.
Sollten diese Methoden in der Manager-Klasse als gemeinsame Methoden deklariert werden? Oder ist es sinnvoller, jedes Mal eine neue Instanz der PersonManager-Klasse zu erstellen und die entsprechende Methode aufzurufen?
Also, wenn geteilt:
PersonManager.AddPerson(NewPerson)
im Vergleich zu nicht-shared:
Dim MyPersonManager as PersonManager
MyPersonManager.AddPerson(NewPerson)
Wenn Personen nach oben, die gemeinsam genutzte Version wäre:
Dim dt as New DataTable
dt = PersonManager.GetPersons
im Vergleich zu dem nicht geteilte Version:
Dim dt as New DataTable
Dim MyPersonManager as New PersonManager
dt = MyPersonManager.GetPersons
Hier ist die C# Antwort http://stackoverflow.com/questions/241339/when-to-use-static-classes-in-c Ersetze das Wort static durch shared für die VB Antwort – Bob