WebService Asincroni chiamati da una pagina ASP

lunedì 28 agosto 2006 - 16.41

luigi.tascapani Profilo | Newbie

Ciao, ho implementato una struttura per l'esecuzione di Batch di Import/Export con un webService .net .
I vari servizi vengono richiamati da una pagina ASP tradizionale, tutto funzionerebbe a meraviglia se non avessi problemi di timeout della pagina.
Per risolvere l'inconveniente ho pensato di rendere asincrono il web service, e di ricaricare periodicamente la pagina asp. Da subito ero partito creando dei thread separati per ogni processo di Import/Export lanciato, poi ho letto che i webservice creati con .net possono essere chiamati tutti in modo asincrono, tuttavia non so come richiamarli in modo asincrono da asp.
Attualmente per richiamare i webservice in modo SINCRONO uso SoapToolkit 3.0.

Ho anche provato a creare una pagina asp.net basandomi su un esempio, ma mi da errore di sintassi (metodo non riconosciuto) mentre scrivo il codice perchè non riconosce i metodi Begin<NomeMetodo> End<NomeMetodo> che mi sembra di aver capito vengano creati automaticamente dal framework .net per ogni webMethod pubblicato.

C'è qualcuno che ha usato webService asincroni con ASP tradizionale? O in alternativa qualcuno che ha usato webService asincroni da una pagina asp.net?

Grazie per l'attenzione
Luigi

luigi.tascapani Profilo | Newbie

Ho risolto facendo un mini scheduler. Il WebService esegue ogni batch in un thread separato, indicando al chiamante un "processId" col quale identificare il Batch.
Ciascun thread si registra su una tabella di un DB separato (che uso anche per altre tabelle di configurazione), al termine dell'elaborazione notifica di essere terminato impostando un apposito flag della tabella.
Un metodo del webService, dato il processId, interroga la tabella del DB per sapere se il batch è terminato o è ancora in corso.
La pagina ASP si autorichiama ogni tot secondo fintanto che il batch non termina.
Cosa ne pensate? non penso sia una soluzione ottimale, ma visti i tempi a mia disposizione e le mie ancora limitate conoscenze in .Net l'ho adottata. Secondo voi rischio qualche dead-lock?

Ciao
Luigi
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5