ciao,
Vasa1988 ha scritto:
In un webservice asmx, che esegue operazioni su un Database, devo aprire e chiudere ad ogni chiamata la connessione con il DB?
Sì, perché la connessione va aperta solo quando ne hai bisogno e chiusa il prima possibile.
Questo non ti causerà problemi di prestazioni, perché grazie al
connection pooling, che è una funzionalità automatica del provider ADO.NET, aprire una connessione sarà un'operazione molto rapida.
Vasa1988 ha scritto:
in programmazione WPF posso controllare se la connessione è aperta e utilizzare SqlConnection generato in altre parti del programma.
Anche in WPF non dovresti tenere aperta la connessione troppo a lungo, diciamo che dovrebbe essere aperta e chiusa nell'ambito di un form di caricamento dati.
Comunque, la sostanziale differenza è che in un'applicazione web ogni richiesta viene servita su un thread differente. Dato che l'oggetto SqlConnection
non è thread-safe, è imperativo che ogni thread usi la propria istanza.
Vasa1988 ha scritto:
se utilizzassi solo pagine html con chiamate ajax(gestendo cosi molto lato client) al ws in asmx sarei un pazzo?
No, assolutamente, quella delle
Single page applications è una pratica che sta emergendo. Esistono appositi framework javascript che ti aiutano a realizzarne, come ad esempio
AngularJS. Ti consiglio di guardare una recentissima sessione di Stefano Mostarda, la cui registrazione verrà pubblicata domani mattina, qui su ASPItalia.
Lo "svantaggio", se così vogliamo dire, è che un'applicazione del genere non si presta molto bene ad essere indicizzata dai motori di ricerca, quindi fai molta attenzione se vuoi svilupparci un frontend.
Vasa1988 ha scritto:
chiamate static webmethod alla pagina aspx e chiamate a asmx
Sono entrambi obsoleti. Per una single page application dovresti valutare
ASP.NET WebAPI. Leggi questa introduzione di Andrea Colaci, in particolare il paragrafo che riguarda la differenza con i servizi SOAP.
http://www.aspitalia.com/articoli/asp.net-mvc/scrivere-servizi-rest-asp.net-web-api.aspxQui trovi gli altri contenuti:
http://tags.aspitalia.com/ASP.NET_Web_API/ciao,
Moreno
Modificato da BrightSoul il 29 ottobre 2014 21.12 -