Ci sono anche altre imprecisioni o cose superflue.
jockerfox ha scritto:
StringBuilder theBufToFile = new StringBuilder("");
Non hai bisogno di passare la stringa vuota al costruttore per inizializzare lo
StringBuilder.
---
jockerfox ha scritto:
theBufToFile.Append(ValForFile[i] + "-");
Già che stai usando uno StringBuilder, adoperalo fino in fondo.
Puoi scrivere:
theBufToFile.Append(ValForFile[i]).Append("-");
Ma probabilmente in questo caso risolveresti prima con
string.Join("-", ValForFile)
---
jockerfox ha scritto:
for (int i = 1; i <= ValForFile.Count; i++)
Sembra tu stia accedendo a una lista o a un array, però il tuo indice varia da 1 (quindi saltando lo zero) fino al
Count: sei sicuro di non tralasciare qualche valore?
---
jockerfox ha scritto:
if (Save_aData(ref theBufToFile) == false)
Tutte le volte che vedo una variabile passata con
ref ho i brividi: la maggior parte viene fatta per scopi o con modi errati.
Se fosse per me, quella parola chiave la eliminerei dal linguaggio. Lascerei tutt'al più
out e basta.
---
jockerfox ha scritto:
Thread.Sleep(100);
Piuttosto che stabilire un tempo di attesa per fare un secondo (e unico) solo tentativo, meglio definire dei "retry", quindi dei tentativi di scrittura con numero adeguato (quello sì) trasformando il tempo unico in un intervallo di attesa tra un tentativo e l'altro, magari modulandolo progressivamente (prima un tempo basso, poi man mano che si fanno tentativi aumentarlo sempre più).
Per esigenze di questo tipo, potresti usare
Polly.
Ciao!