//private static volatile bool NuoveRichieste = false; private static void QueryRichieste() { for (int i = ElencoNuoveRichieste.Count - 1; i >= 0; i--) { RichiestaCalendario richiestaCalendario = ElencoNuoveRichieste[i]; ElencoNuoveRichieste.RemoveAt(i); ElencoRichiesteAttive.Add(richiestaCalendario); prevent.calendar.Parametri parametri = new prevent.calendar.Parametri(); parametri.DataInizio = richiestaCalendario.DataInizio; parametri.DataFine = richiestaCalendario.DataFine; parametri.TipoGS = richiestaCalendario.TipoRichiesta; parametri.IdSito = new string[1]; parametri.IdSito[0] = richiestaCalendario.Ingresso.ToString(); richiestaCalendario.ParametriXml = parametri; // attivo un thread che effettua la chiamata al web service ParameterizedThreadStart newThreadStart = new ParameterizedThreadStart(TaskAsincrono); Thread nuovo = new Thread(newThreadStart); nuovo.Start(richiestaCalendario); if (i > 0) { Thread.Sleep(300); } } }
private static string GetXmlRichiesta(prevent.calendar.Parametri parametri) { using (MemoryStream stream = new MemoryStream()) { XmlSerializerNamespaces ns = new XmlSerializerNamespaces(); ns.Add("", ""); XmlSerializer xml = new XmlSerializer(typeof(prevent.calendar.Parametri)); xml.Serialize(stream, parametri, ns); string xmlstr = Encoding.UTF8.GetString(stream.ToArray()); return(xmlstr); } }