Si dovrebbe sempre cercare di usare un oggetto composto di tipi concreti (utilizzando il modello di progettazione composito), piuttosto che una lista di oggetti t IPI. Chi si ricorderebbe che diamine fosse ciascuno di quegli oggetti? Pensate manutenzione del codice in seguito ... Invece, provare qualcosa di simile:
Public (Class or Structure) MyPerson
public string FirstName { get; set; }
public string LastName { get; set; }
public string Address { get; set; }
public int ZipCode { get; set; }
End Class
E poi:
Dim person as new MyPerson With { .FirstName = “Joe”,
.LastName = "Smith”,
...
}
backgroundWorker1.RunWorkerAsync(person)
e poi:
private void backgroundWorker1_DoWork (object sender, DoWorkEventArgs e)
{
MyPerson person = e.Argument as MyPerson
string firstname = person.FirstName;
string lastname = person.LastName;
int zipcode = person.ZipCode;
}
Come posso fare due argomenti ? – sooprise
Oppure invio un oggetto pieno di più di un argomento? – sooprise
@soo: utilizzare una classe helper o una 'Tupla ' (C# 4 +) (Modifica: Sì, utilizzare un oggetto per comprimere tutto. Vedere ad esempio DoWorkEventArgs self). –