—
Giorgio Borelli
Gli HttpHandlers di ASP.NET consentono di elaborare una risposta a fronte di una qualsivoglia richiesta al web server (IIS). Usare gli HttpHandlers permette di personalizzare la risposta da inviare al client (il browser) non solo per una classica pagina, ma per qualsivoglia risorsa sia stata richiesta, sia questa una immagine un file pdf o un file di risorse .resx ed altro ancora.
Implementarli nella propria applicazione web offre potenzialità enormi, ed il loro uso è relativamente semplice, questi non sono altro che una implementazione dell'interfaccia IHttpHandler, in grado di prendere in carico il processo della richiesta (HttpContext) ed elaborarne una risposta, per questo a fronte di richieste diverse (pagine, risorse, immagini, etc...) è possibile implementare Handlers diversi così da fornire risposte diverse.
Lo scopo di questo articolo non è quello però di descrivere il funzionamento degli HttpHandler, ma tanto quello di vedere come aggiungerli alla nostra applicazione web tramite il web.config, andiamo a scoprire come fare.
Prosegue...
—
Giorgio Borelli
Se vi si è sollevata questa eccezione, e ricevete il messaggio d'errore "Impossibile trovare la classe di risorse per questa pagina" il problema risiede in una errata gestione dei file di risorse di ASP.NET. Risolvere l'eccezione è molto semplice, vediamo come funzionano i file di risorse con estensione .resx e prevenire così il generarsi di questa eccezione a run-time.
Prosegue...
—
Giorgio Borelli
Le classi astratte e le interfacce sono due concetti fondamentali della programmazione orientata agli oggetti (OOP, Object Oriented Programming), a prescindere dal linguaggio usato, sia questo Java, C++ o C#. L'importanza di conoscere i concetti teorici che stanno alla base di questi due elementi, è fondamentale per un buon programmatore; capire la differenza tra classi astratte ed interfacce permette di valutare in modo corretto quando usare l'una e quando usare l'altra.
Sia le classi astratte che le interfacce non possono essere instanziate poichè al loro interno definiscono soltanto i metodi e le proprietà che dovranno essere implementate dalle classi che deriveranno da esse, rappresentano pertanto un modello, oserei dire un "template" per le classi che una volta derivate da esse ed instanziate ne implementeranno il comportamento.
Classi astratte ed interfacce, così simili tra loro, possono confondere le idee ai neo programmatori che per le prime volte si avvicinano a questi concetti ed al polimorfismo della OOP, ma sebbene le similitudini sono molte vi sono delle sottili ma fondamentali differenze concettuali che è bene avere chiare in mente, per capire quando usare una classe astratta e quando una interfaccia.
Prosegue...
1efda794-797a-40b4-887b-077e52a35a95|33|3.5|96d5b379-7e1d-4dac-a6ba-1e50db561b04
Categorie: C#
Tags: classi, OOP, polimorfismo