Salve a tutti,
Sto scrivendo un programma in C# per popolare i campi di una pagina web in modo automatico.
In particolare, in questa pagina è presente un drop-down contenente circa 5300 campi.
Il codice che sto usando è il seguente:
codice:
private void button2_Click(object sender, EventArgs e)
        {
            foreach (InternetExplorer ie in new ShellWindows())
            {
                if (ie.LocationURL.Contains("aams"))
                {
                    for (int i = 1; i < ie.Document.GetElementsByTagName("option").length - 1; i++)
                    {
                        if (ie.Document.GetElementsByTagName("option")[i].InnerText.Contains("testo da cercare"))
                        {
                            ie.Document.GetElementsByTagName("option")[i].SetAttribute("selected", "true");
                            ie.Document.GetElementsByTagName("input")["aggiungi"].Click();
                            break;
                        }
                    }
                    ie.Document.GetElementById("num").SetAttribute("value", "1");
                    ie.Document.GetElementsByTagName("input")["prepara"].Click();
                    ie.Document.GetElementById("nome_sftw1").SetAttribute("value", "Nome_Software");
                    ie.Document.GetElementById("cod_sha11").SetAttribute("value", "1234567890");
                    ie.Document.GetElementsByTagName("input")["Acquisisci"].Click();
                }
            }
        }
Il problema di questo codice sta nel ciclo for, che è estremamente lento: solo per arrivare a valutare 1000 campi, ci mette una 30ina di secondi (o anche più).
Conoscete un algoritmo più efficiente del ciclo for per fare questo?
Vi ringrazio.