Sono nuovo in C # e ho difficoltà con la struttura del codice. La mia applicazione ha:
-
GUI con pulsante
Show my Ethernet IP
. Quando l'utente fa clic su questo pulsante, viene visualizzato l'indirizzo IP del PC. -
Classe
ModbusTCPSlaveMachine
. All'interno di questa classe creoTCPListenter
e lo fornisco con l'indirizzo IP Ethernet del PC.
In entrambi i casi ottengo l'indirizzo IP locale usando lo stesso metodo GetAllLocalIPv4
. In questo momento ho 2 copie di questo metodo nel codice (nelle classi Form
e ModbusTCPSlaveMachine
) che non è buono, immagino. Ad esempio, in Python avrei semplicemente posto il metodo in qualche modulo di utilità. Sono consapevole che i metodi non possono essere localizzati direttamente nello spazio dei nomi in C # mentre non capisco il perché.
L'opzione che posso pensare è di posizionare questa funzione in una classe separata - qualche classe di utilità contenente un singolo metodo (basato sull'esperienza Python). Non sono sicuro che questa sia una soluzione ragionevole in C # perché questa classe di utilità sembra un contenitore privo di significato per me.
Come posso / devo risolvere il problema?