siempre debe tratar de utilizar un objeto compuesto con tipos concretos (utilizando el patrón de diseño compuesto) en lugar de una lista de objetos t ypes. ¿Quién recordaría qué diablos es cada uno de esos objetos? Piense en el mantenimiento de su código más adelante ... En su lugar, intente algo como esto:
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
Y luego:
Dim person as new MyPerson With { .FirstName = “Joe”,
.LastName = "Smith”,
...
}
backgroundWorker1.RunWorkerAsync(person)
y luego:
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;
}
¿Cómo puedo hacer dos argumentos ? – sooprise
¿O envío un objeto lleno de más de un argumento? – sooprise
@soo: utilice una clase auxiliar o un 'Tuple ' (C# 4 +) (Editar: Sí, use un objeto para empaquetarlo todo. Consulte, por ejemplo, DoWorkEventArgs). –