Quando e come disabilitare il ViewState

Giorgio Borelli

Disabilitare il ViewState per non appesantire la paginaIl protocollo HTTP consente la navigabilità in internet, quando il browser (il client) chiede di visualizzare una pagina ad un dato indirizzo, il web server risponde inviandogliela, questo meccanismo però è senza stato, ovvero tra la richiesta di una pagina web e le successive non vi è alcuna relazione o dipendenza, il server scarica la pagina sul client e libera tutte le risorse non tenendo alcuna informazione su di essa, si dice che il protocollo http è stateless.

Sin quando si tratta di visualizzare delle semplici pagine html contenenti soltanto foto e testo questo meccanismo và più che bene, anzi è particolarmente performante poichè non impegna la banda e le risorse del server, ma col crescere d'internet un sito web è diventato una vera applicazione web, dove mantenere le informazioni tra una richiesta e l'altra è un'esigenza fondamentale per implementare funzionalità più avanzate, ecco allora che il protocollo http con la sua natura stateless mostra tutta la sua limitazione.

Nell'evoluzione dei linguaggi orientati al web si sono trovate ed adottate diverse soluzioni per sopperire alla mancanza di stato di http, ed anche ASP.NET ovviamente implementa tutta una serie di meccanismi per la "Gestione dello Stato", troviamo: i campi hidden, i cookies, il ViewState, le Session, l'Application; tutti con i propri pregi e difetti, o meglio con le proprie caratteristiche per essere usati adeguatamente a seconda del contesto. Tra questi meccanismi di Gestione dello Stato, un'importanza particolare è rivestita dal ViewState, abilitato di default sui controlli e sulle pagine aspx, tramite esso è possibile recuperare lo stato di un controllo tra un post back e l'altro. Non sempre però il ViewState è utile, ci sono casi in cui non serve, e disabilitarlo allegerisce la pagina di un sovraccarico inutile, allora, quando e come disabilitare il ViewState?

Prosegue...

Voto 4.0 espresso da 1 persone. Assegna il tuo voto:

  • Currently 4.0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Categorie: ASP.NET

Tags:

Come configurare un'applicazione web ad utilizzare le versioni di ASP.NET successive alla 2.0

Giorgio Borelli

Impostare la versione di ASP.NET in Internet Information ServerIl Server Web di casa Microsoft, Internet Information Server (IIS) soddisfa le richieste di pagine e risorse da parte dei browser (i client), e per farlo correttamente necessità di essere opportunamente configurato, in particolare per le applicazioni web sviluppate con tecnologia ASP.NET, bisogna selezionare l'opportuna versione del .net framework con cui l'applicativo è stato realizzato, questo però non succede con la versione 3.5 di ASP.NET, andando nel pannello di IIS per la configurazione di ASP.NET, nel menù a tendina non è presente la voce relativa a questa versione del framework, come mai?

Andiamo a scoprire perchè in IIS non è possibile impostare la versione 3.5 o la 3.0 del .NET framework e come possiamo fare per usarla nelle nostre applicazioni web.

Prosegue...

Voto 2.5 espresso da 2 persone. Assegna il tuo voto:

  • Currently 2.5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Categorie: ASP.NET

Tags: , , ,

Come Intercettare un controllo ASP.NET all'interno della riga di una GridView in Edit Mode

Giorgio Borelli

Evento RowUpdating di una GridView per intercettare un controllo ASP.NET all'interno della riga di una GridView in Edit Mode

Una delle esigenze molto sentite tra gli sviluppatori ASP.NET è quella di poter gestire ed avere il pieno controllo della GridView, un controllo molto usato per la presentazione, la paginazione e la modifica di liste di dati.

Tramite il controllo GridView di ASP.NET pertanto è facile gestire liste di dati, la GridView infatti presenta tutta una serie di proprietà che consentono con facilità di formattare, paginare e gestire le "liste". La GridView consente inoltre di gestire i dati sia in "Presentation Mode" che in "Edit Mode", quest'ultima modalità risulta comoda per l'aggiornamento (update) di un record rappresentato dalla singola riga della GridView, le cose si complicano un pò però quando si cerca di avere il controllo completo su un elemento asp.net all'interno della riga della GridView, in source view infatti non riusciamo ad accedere al controllo tramite il suo ID poichè non viene visto dalla classe Page in quanto "mascherato" all'interno della GridView stessa.

Come fare allora per accedere ai controlli specificati nelle righe di una GridView di asp.net in Edit Mode? Dobbiamo sfruttare l'Evento Row_Updating e scrivere qualche riga di codice per intercettare la riga selezionata e l'ID del controllo interessato, andiamo a scoprire come fare.

Prosegue...

Voto 4.5 espresso da 2 persone. Assegna il tuo voto:

  • Currently 4.5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Categorie: ASP.NET

Tags:

How to fix Error AjaxControlToolkit requires ASP.NET Ajax 4.0 scripts

Giorgio Borelli

Finestra d'errore AjaxControlToolkit requires ASP.NET Ajax 4.0 scriptsNell'articolo precedente "Come aggiungere gli Ajax Control ToolKit in Visual Studio" abbiamo visto come integrare i control extender AJAX in Visual Studio e referenziare correttamente le librerie AJAX.

Il framework ASP.NET Ajax è composto da due parti, il lato client e quello server. Il framework client rilasciato con la libreria AJAX è interamente scritto in Javascript e rappresenta decisamente la parte più corposa di ASP.NET Ajax con tanti controlli che estendono le funzionalità; ciò nonostante la comunicazione asincrona con renderizzazione parziale e senza postback della pagina, non sarebbe possibile senza il componente server, per quest'ultimo è il controllo ScriptManager responsabile della renderizzazioni e della presentazione delle funzioni javascript implementate col lato client.

Pertanto, per poter usufruire dei controlli AJAX nelle nostre pagine è necessario che sia presente nella stessa il controllo lato server ScriptManager. AJAX ed i suoi controlli client e server sono stati introdotti dalla versione 2.0 del .net framework in poi, nel frattempo la libreria AJAX è andata evolvendosi ampliando le sue funzionalità ed i controlli presenti nella libreria e nei Control ToolKit, di fatto alcuni nuovi controlli o quelli rivisti non sono più in grado di comunicare con la parte server gestita tramite lo ScriptManager, poichè quest'ultimo è in grado di gestire le richieste riferendosi a versioni più vecchie della Microsoft Library AJAX.

Ecco perchè nel caso in cui noi abbiamo referenziato l'ultima versione della libreria AJAX nella nostra applicazione web, e cerchiamo di gestirla tramite lo ScriptManager, è possibile che in fase di caricamento della pagina venga fuori l'errore: "AjaxControlToolkit requires ASP.NET Ajax 4.0 scripts".

Ma così come vengono rilasciate nuove versioni della libreria AJAX client, lo stesso accade per quella server, in modo da permettere una corretta interazione delle chiamate asincrone. Quindi per correggere l'errore "AjaxControlToolkit requires ASP.NET Ajax 4.0 scripts" basta usare la nuova versione del controllo server ScriptManager.

Prosegue...

Voto 5.0 espresso da 1 persone. Assegna il tuo voto:

  • Currently 5.0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Categorie: Ajax | ASP.NET | fix | Visual Studio

Tags: , ,

Come aggiungere gli Ajax Control ToolKit alla Toolbox di Visual Studio e referenziare le librerie AJAX

Giorgio Borelli

Come aggiungere gli Ajax Control ToolKit alla Tolbox di Visual StudioIl termine AJAX che è l'acronimo di Asynchronous Javascript and XML, è quella "tecnologia" che consente di effettuare chiamate asincrone tra il client (il browser) ed il server, evitando il classico postback della pagina.

Sebbene AJAX non sia di per sè una novità, in quanto risale ad un componente microsoft inserito in Internet Explorer nel lontano 1998 per il controllo della posta via veb su Exchange, il suo successo è comunque recente, ma tale da spopolare sul web degli ultimi anni. La possibilità d'implementare chiamate asincrone ed evitare il postback, offre agli sviluppatori web una potenza ed una velocità di esecuzione della pagina impensabile sino a questo momento, rivoluzionando di fatto il modo di pensare il web, ed aumentando in modo esponenziale la Web User Experience degli utenti.

Chi sviluppa web, oggi come oggi, non può pensare di prescindere da AJAX, così anche microsoft si attrezza per mettere a disposizione dei suoi sviluppatori questa potente tecnica, ed introduce una piattaforma per AJAX nel .net framework sin dalla versione 2.0 chiamata ASP.NET AJAX, che si compone di due parti una client, ed una server. Il contributo di Microsoft ad AJAX però non si ferma qui, essa infatti sviluppa un progetto Open Source, mettendo a disposizione della community di sviluppatori una serie di controlli belli e pronti per realizzare applicazioni AJAX chiamati AJAX Control ToolKit, rendendo di fatto più facile l'approccio e lo sviluppo di applicazioni web AJAX based da parte dei Web Developer.

Di fatto però, un'applicazione web sviluppata con ASP.NET, non è di per sè AJAX based, e lo stesso Visual Studio non incorpora all'interno della sua ToolBox il Kit dei Controlli AJAX, come fare allora per aggiungere questi controlli all'interno della ToolBox dell'IDE di Visual Studio?

Prosegue...

Voto 5.0 espresso da 1 persone. Assegna il tuo voto:

  • Currently 5.0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Categorie: Ajax | ASP.NET | Visual Studio

Tags: , , ,

Creare un HttpHandler per la gestione delle immagini in ASP.NET

Giorgio Borelli

Creare un httphandler personalizzato per il ridimensionamento automatico delle richieste riguardanti le immagini in asp.net Gli HttpHandler sono gli oggetti del motore di ASP.NET responsabili della gestione della risposta in seguito alle richieste dei client.

Conoscere il funzionamento degli HttpHandler di ASP.NET permette di gestire come si vuole le risposte da dare alle richieste dei client, in quanto è possibile tramite il web.config associare un path ai tipi di risorse (file) che si vuole gestire con il proprio personalissimo HttpHandler.

La funzionalità degli HttpHandlers è davvero straordinaria, se ci pensiamo bene, ASP.NET mette in mano dei programmatori un potere grandissimo, quello di poter gestire come si vuole le risorse da presentare ai client. In questo modo ad esempio è possibile creare dei personali HttpHandlers per la gestione di file, report, e di qualsiasi altra risorsa web di cui la nostra applicazione web necessita, senza nemmeno interessarci di come questa effettivamente funzioni. A tal proposito, in questo articolo, proveremo ad implementare un HttpHandler per il ridimensionamento automatico delle immagini di un'applicazione Web scritta in ASP.NET.

Prosegue...

Voto 5.0 espresso da 1 persone. Assegna il tuo voto:

  • Currently 5.0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Categorie: ASP.NET | C#

Tags:

Come mettere offline unapplicazione web di asp.net

Giorgio Borelli

Dovete aggiornare la vostra applicazione web, oppure dovete fare un controllo sui dati del vostro database access caricato online, insomma avete l'esigenza di mettere offline temporaneamente la vostra applicazione web scritta in asp.net.

Inoltre volete far sì che agli utenti che si collegano al vostro sito venga presentato un messaggio user friendly, che li avvisi del momentaneo disagio e che presto sarete nuovamente online.

Bene, a partire da asp.net 2.0 è possibile mettere offline la propria applicazione web in pochi secondi, andiamo a scoprire come fare

Prosegue...

Voto 5.0 espresso da 1 persone. Assegna il tuo voto:

  • Currently 5.0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Categorie: ASP.NET

Tags:

Creare un widget personalizzato per inserire Google AdSense in BlogEngine.NET

Giorgio Borelli

 

Come creare un widget personalizzato di BlogEngine.NET per inserirgli il codice di Google AdSenseOrmai la piattaforma BlogEngine.NET per blog è ampiamente diffusa ed utilizzata da svariati blogger. Certo non ha ancora raggiunto i numeri di Wordpress ma si è comunque ritagliata un'ottima fetta di utenti, in continuo aumento fra l'altro.

Per chi non la conoscesse, BlogEngine.NET è una piattaforma di blogging sviluppata su .net framework in linguaggio C#, nata da un progetto Open Source inserito tra gli Starter Kits di ASP.NET.

Visto il suo sempre maggiore impiego, l'esigenze degli utenti che la utilizzano sono sempre crescenti, così la nascita di nuovi plug-in, theme e widgets la fà avvicinare ogni giorno sempre più alla sua più famosa e diretta concorrente Wordpress. Sotto alcuni punti di vista però BlogEngine.NET soffre ancora della sua relativa gioventù, ad esempio non è stato ancora creato un widget ad hoc per la gestione degli strumenti di monetizzazione messi a disposizione dal web. 

In questo articolo allora voglio mostrarvi come dare un ulteriore tocco in più a questa stupenda piattaforma per blog (che io stesso uso), realizzando un widget personalizzato per BlogEngine.NET nel quale inserire lo script del codice di Google AdSense a cui tutti noi blogger siamo largamente affezionati, andiamo a scoprire come fare.

Prosegue...

Voto 4.0 espresso da 2 persone. Assegna il tuo voto:

  • Currently 4.0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Categorie: AdSense | ASP.NET | BlogEngine.NET | C#

Tags: , , ,

Specificare più Sitemap in ASP.NET

Giorgio Borelli

specificare più di una sitemap in pagine aspx grazie al modello a providers di asp.netLe sitemap in ASP.NET permettono di specificare un menù gerarchico di navigazione in formato XML, basta includere un file sitemap nella root principale del sito web, che di default si chiama web.sitemap, ed associarlo successivamente ad uno dei controlli asp.net per la navigazione, quali: SiteMapPath, Menu, TreeView. Personalizzare i controlli di navigazione è molto semplice ed ecco bello è pronto il vostro controllo menù.

Il file web.sitemap è quindi il file di default per la navigazione in asp.net, ma come possiamo fare per specificare un'ulteriore sitemap se il nostro sito dovesse gestire due o più menu di navigazione differenti ed indipendenti tra di loro? In questo caso, per specificare più di una sitemap dobbiamo sfruttare proprio il modello a provider per la navigazione di ASP.NET.

Andiamo a scoprire come fare.

Prosegue...

Voto 3.0 espresso da 1 persone. Assegna il tuo voto:

  • Currently 3.0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Categorie: ASP.NET

Tags: ,

Inserire AdSense per la ricerca in pagine ASP.NET

Giorgio Borelli

inserire il box di ricerca personalizzata di Google AdSense in pagine ASP.NETGoogle AdSense per la ricerca è uno strumento molto utile sotto diversi punti di vista, non solo ti permette di avere una search box subito pronta e funzionante da inserire immediatamente sul tuo sito web, ma ti permette anche di estendere le possibilità di guadagno tramite AdSense.

Purtroppo però, per chi sviluppa con tecnologia asp.net, l'inserimento di AdSense per la ricerca nelle pagine aspx non sembra così agevole come per le altre piattaforme. Una volta creato il box di ricerca con AdSense ed acquisito il codice da inserire nelle proprie pagine aspx, questo non funziona come dovrebbe, il box compare correttamente sulla pagina ma facendo click sul bottone "cerca" non accade nulla, non si ha il classico refresh con postback della pagina.

Il problema nasce a causa di una caratteristica peculiare delle pagine aspx, il proprio form (illustreremo meglio più avanti), la soluzione però esiste, ed anche se non è propriamente agevole ed "esteticamente" elengatissima, è funzionante. Penso quindi che i vantaggi dati dall'uso di AdSense per la ricerca siano superiori al warkround che andremo ad usare per aggirare questa "limitazione" di asp.net, andiamo a scoprire come fare.

Prosegue...

Voto 3.0 espresso da 1 persone. Assegna il tuo voto:

  • Currently 3.0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Categorie: AdSense | ASP.NET

Tags: