ASP.NET

[ROA] Contratto

Nel precedente post ho parlato della lacuna della definizione del contratto nel mondo ROA rispetto al mondo SOA. E' bene che faccia qualche precisazione, ma prima di parlare di questo fatemi fare un escursus sul concetto di contratto e come questo si applichi oggi nel mondo SOA (Service Oriented Architecture). Se chiediamo ad un avvocato di scrivere un contratto, garantendo un certo introito :-), ci innondera' sicuramente di domande e probabilmente scrivera' 40/50 pagine di documento dove ogni singola parola ha un suo peso specifico. In sostanza la regola e', ogni aspetto non 'normato' o definito rappresenta un threat. In ambito IT...

posted @ domenica 11 maggio 2008 07:08 | Feedback (0)

Creare un HttpContext al volo

In queste ultime due ore stavo prototipizzando un micro framework per implementare servizi REST based mediante delle Http handlers. Niente di eccezzionale, ma l'idea di avere qualche cosa di simile a WCF, cioe' dei metodi con una firma prolissa e molto OO, mi piace. Dopo aver trascorso un'oretta di codifica (refactoring a gogo), ho iniziato a scrivere qualche test. Per testare un Http handler ci vuole un Http context! E come lo creo? Non voglio tirar su tutta la 'baracca' ASP.NET e voglio avere un oggettino dove posso verificare il contenuto della risposta. Per creare un HttpContext ci vuole un...

posted @ martedì 29 aprile 2008 17:11 | Feedback (0)

Silverlight in azione

Ormai tutti ne parlano, l'argomento hot topic e' divenuto SilverLight. Ci sono gia' parecchie demo interessanti che fanno presagire ad evoluzioni/rivoluzioni nel mondo della applicazioni web-like. Una demo che mi ha particolarmente colpito e' quella di Telerik: Room Designer. L'ho provata dal mio Safari su Mac OS :-) Gia' vedo le grandi catene di mobili ...

posted @ giovedì 26 aprile 2007 10:46 | Feedback (0)

Validazione con RegularExpressionValidator

Update: ho seguito il suggerimento di Lorenzo. Il post si è trasformato in tip.

posted @ venerdì 29 settembre 2006 16:12 | Feedback (3)

Validazione, si ma dove ?

Molto spesso, durante i corsi di ASP.NET, nel mentre parlo di validazione mi vien posta la fatidica domanda. Dove debbo applicare il controllo dell'input ? Questa apparentemente semplice domanda nasconde un problema molto serio, soprattutto nel mondo delle applicazioni distribuite, ma non solo (ricordo che i danni maggiori arrivano da dipendenti inc...ti !!). Innanzi tutto è bene ricordare che l'informazion fornita da un utente è SEMPRE potenzialmente PERICOLOSA. Possiamo avere problemi di sicurezza volontaria (SQL Injection, Cross-Script Injection, ecc.) ma anche involontaria (integrità del dato, inavvertita cancellazione, ecc.). Quindi è bene controllare sempre ciò che viene inserito. Il problema è quindi dove...

posted @ venerdì 22 settembre 2006 04:52 | Feedback (1)

Postback e ShowModalDialog

A volte è necessario utilizzare le finestre modali in ASP.NET per evitare che l'utente ne possa aprire molte dello stesso tipo per distrazione. Per avere una finestra modale è sufficiente richiamare il metodo javascript ShowModalDialog dell'oggetto window. Quando si apre una finestra modale ci si può trovare di fronte ad un effetto collaterale. Ogni volta che si fa una postback (ad esempio gestendo l'evento Click di un Button ASP.NET) si apre una nuova finestra modale. Per risolvere il problema è sufficiente aggiungere il tag base nell'head della pagina ASP.NET invocata nella dialog modale: <base target="_self" /> fonte: ShowModalDialog

posted @ giovedì 31 agosto 2006 00:09 | Feedback (2)

Un buon sito dedicato ai CSS

Molto interessante: http://www.positioniseverything.net/

posted @ sabato 24 giugno 2006 08:25 | Feedback (0)

Bug sul debugging in Visual Studio 2005

In questi giorni ho reinstallato il mio portatile con Windows Server 2003 R2. Il problema è banale, IIS 5.1 non supporta il multi site !! Quindi, in attesa di Windows Vista con IIS7, ho deciso di rivolgermi a Windows Server 2003. Ovviamente il web server locale usato da Visual Studio 2005 non è sufficiente per quello che debbo fare (giocare con vari STS...). La sopresa è venuta quando ho iniziato a scrivere il primo sitarello del cavolo ("ciao mondo") giusto per vedere se andava tutto. Non si può debuggare. Dopo 4 ore di ricerche della soluzione, ho postato sul forum ASP.NET....

posted @ giovedì 2 febbraio 2006 01:50 | Feedback (171)

Un bel tool per sviluppatori web

Come sviluppatore web molto spesso guardo i siti altrui e prendo spunto sulla tecnica adottata per raggiungere determinati effetti. Infatti ho sempre pensato che noi (sviluppatori) non creiamo ma trasformiamo :-) Capire come sono stati raggiunti determinati risultati visual con il web significa capire che cosa sta dietro il codice html, javascript, css, .... Firefox fornisce un'estensione molto interessante per lo sviluppatore.

posted @ venerdì 13 gennaio 2006 05:54 | Feedback (3)

Quale pagina di login ?

Durante le feste natalizie ho dedicato un pò di tempo a girovagare per siti internet (non pensate male !!!). Ad un certo punto ho posta l'attenzione alla logica di navigazione della login, e razionalizzando, ho trovato tre forme comuni (ce ne sono molte altre ma parevano minoritarie): L'home page piena di contenuti contiene anche la maschera di login per l'area riservata L'home page con la sola maschera di login L'home page che richiede l'autenticazione e se mancante ridirige verso una pagina di login Nella nostra (aziendale) ultima creatura abbiamo scelto l'opzione 2, anche se forse, non mi convince più di tanto. Su alcuni siti...

posted @ lunedì 9 gennaio 2006 02:58 | Feedback (9)

Naming guidelines

Sono abbastanza solito adottare le naming guidelines nel codice che scrivo tutti i giorni (beh, non sempre tutti i giorni !|). Ciò nonostante a volte mi trovo in difficoltà nell'adottare uno standard. Faccio un esempio: Prendiamo una WebForm oppure una WinForm e aggiungiamo una banalissima Label che rappresenta il nome. Come chiamaremmo la variabile (protetta by default) ? protected Label FirstName; protected Label LblFirstName; protected Label StaticFirstName; Che nome l'assegnereste ? PS Dato che vi sono innumerevoli casi come questi (pensiamo a tutti i controlli Windows e Web) perchè non creaiamo una bella lista nel Wiki UGI ?

posted @ lunedì 19 dicembre 2005 08:31 | Feedback (20)

Libro di Dino alla modica cifra di....70 eur

E' indubbio il valore dell'autore del libro "Programming ASP.NET 2.0 -- core reference". E' indubbio che i contenuti siano comunque molti (come dice Dino sono 800 pagine), ma sinceramente 70 eur sono troppi ! E' vero che su Amazon costa 33 dollari, praticamente la metà (comprese le spese di viaggio) che la versione italiana (sapete dove comprare i libri). Morale: 1. Il ROI per imparare l'inglese è ottimo di questi tempi 2. L'editore non ha idea di come definire i prezzi all'estero (mi pare chiaro)  

posted @ martedì 6 dicembre 2005 07:19 | Feedback (641)

Come chiamare un servizio Web utilizzando un certificato di client per l'autenticazione in un'applicazione Web ASP.NET

Questa è una domanda che spesso viene posta quando ci si trova in zona 'messa in produzione'. Una buona risposta la trovate nella knowledge base dell'MSDN.

posted @ mercoledì 21 settembre 2005 06:33 | Feedback (2)

Atlas mania

Molti sviluppatori parlano di Atlas. La tecnologia, o meglio l'insieme di tecnologie, è molto interessante ma continua sfuggirmi un aspetto, a parer mio, fondamentale: la sicurezza. Nessuno ne parla ma credo sia uno dei punti deboli di questa nuova proposta. Mi rimane da investigare (non nascondo che ho solo letto su Atlas), ma sono abbastanza scettico in quanto le tecnologie di cui parliamo solo le stesse usate da parecchi anni, solo confezionate in un diverso modo.

posted @ lunedì 19 settembre 2005 05:01 | Feedback (6)

Tabelle o CSS ?

Confesso che anch'io sono stato (e spesso lo sono tutt'ora) un grande utilkizzatore di tabelle (nidificazioni quasi infinite). Questo articolo mi induce a studiare meglio i CSS e soprattutto pensare meglio al layout.

posted @ domenica 4 settembre 2005 04:29 | Feedback (7)

Controlli compositi in ASP.NET 2.0

I controlli compositi (la maggior parte) sono dei controlli che contengono altri controlli al proprio interno. In ASP.NET 1.x per creare un controllo composito è necessario ereditare da WebControl, implementare INamingContainer e verificare sempre che i controlli child siano stati creati correttamente (EnsureChildControls) almeno a design time. In ASP.NET 2.0 si è deciso di semplificare la vita, in quanto basta ereditare da CompositeControl ed il gioco è fatto.

posted @ giovedì 4 agosto 2005 03:32 | Feedback (3)

Spigoli arrotondati

Molto spesso si usano gli spigoli delle tabelle arrotondati per rendere la pagina stilisticamente più gradevole. Solitamente questo effetto vien raggiunto tramite immagini che disegnano lo spigolo. In questo sito si illustra una tecnica basata su codice javascript e CSS (compatibile con IE e Firefox)

posted @ giovedì 4 agosto 2005 02:20 | Feedback (3)

Asynchronous JavaScripting and XML, aka AJAX

Nel hanno parlato in tanti e ci sono i favorevoli ed i contrari, come tutte le cose nuove. Per farmi un'idea, mi sono letto alcuni articoli e sono giunto alla conclusione che sia un'approccio (AJAX non è una tecnologia: "Ajax isn’t a technology. It’s really several technologies, each flourishing in its own right, coming together in powerful new ways" [Garrett]) estremamente interessante se circoscritto ad alcune aree di sviluppo. In particolare condivido appieno i punti elencati da Thomas il quale ricorda come sia fondamentale osservare al massimo le regole di usability delle applicazioni web. Nel rispetto di questa, AJAX può veramente...

posted @ martedì 19 luglio 2005 15:58 | Feedback (0)

Pagine asincrone in ASP.NET 2.0

Sebbene un pò vecchiotto, questo post è interessante....

posted @ martedì 19 luglio 2005 10:24 | Feedback (0)

ASP.NET beta...

Me ne sono accorto solo ora

posted @ mercoledì 29 giugno 2005 01:48 | Feedback (1)

Rilasciata la technology preview di WSE 3.0

WSE (Web Services enHancements) è ora disponibile in technology preview anche per il framework 2.0. Potete scaricarla gratuitamente dal sito msdn.

posted @ domenica 5 giugno 2005 10:18 | Feedback (0)

Rimappare la local path di IIS

Molti sviluppatori hanno a che fare con differenti web site (quando non sono sufficienti le virtual directories). Questo genera alcuni problemi per chi ha Windows 2000 Professional oppure Windows XP in quanto non è possibile (almeno pare) creare più web sites (solo tante belle virtual directories). Per risolvere il problema ci sono due modi: upgradare il sistema a Windows 2000 server oppure Windows 2003 server modificare l'home directory local path del sito di default in IIS Per un pò di tempo, quando passavo da un site all'altro usavo sempre la management console di IIS. La cosa è divenyta abbastanza laboriosa quando passavo da un...

posted @ martedì 22 marzo 2005 03:14 | Feedback (2)

DotNetNuke in italiano

DotNetNuke ha riscontrato un grande successo fra gli sviluppatori nel mondo ed è interessante vedere che ne esiste anche una versione tutta locale :-)

posted @ martedì 15 febbraio 2005 08:45 | Feedback (0)

HttpResponse Flush

Non so se vi è mai capitato, ma a volte è nacassario spedire al client (user agent) il contenuto del buffer anzitempo. Questo lavoro è solitamente eseguito dal metodo Flush della classe HttpResponse, come da esempio: Response.Write("aaaaaaaaaaaaaaaaaaaaaaaaaa");Response.Flush();System.Threading.Thread.Sleep(10000);  Peccato che se la dimensione del buffer è inferiore a 256 bytes (compresi) allora sembra non venga spedito alcunchè. In realtà non è vero, il problema è del browser. Infatti, il codice di cui sopra verrà correttamente visualizzato da browsers differenti da Internet Explorer (vedasi Firefox) mentre in IE nulla da fare. Pare che in IE ci sia un bug (uno ?!?!) che non permetta di...

posted @ giovedì 13 gennaio 2005 02:50 | Feedback (1)

Membership management

Andrea ha parlato ampiamente di membership management anche in chiave ASP.NET v1.1. Sinceramente la parte di autorizzazione non mi entusiasma un granchè, anzi, la trovo abbastanza povera, e mi stupisce anche il fatto che non si sia preso come riferimento l'authorization manager presente in Windows 2003 e Windows 2000 (service pack 4). Non ci resta che costruire un custom provider :-)

posted @ martedì 14 dicembre 2004 15:23 | Feedback (0)

CSS refactoring

Per molto tempo ho scritto le pagine ASP.NET definendo, pagina per pagina i margini della stessa: <body topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0"> Ormai, era divenuto meccanico. Un approccio migliore (e probabilmente più corretto) consiste nel definire lo style dell'elemento body comse segue: body {    margin: 0; } Avendo, di base un CSS comune usato in tutto il sito, diventa chiara la convenienza :-)

posted @ domenica 28 novembre 2004 05:59 | Feedback (1)

Site Counters in ASP.NET

Scott spiega come mai la funzionalità del "Site Counter" sarà rimossa da Visual Studio.NET 2005.

posted @ martedì 23 novembre 2004 06:15 | Feedback (0)

News per Visual Studio.NET 2005

Si procede :-)

posted @ lunedì 15 novembre 2004 02:06 | Feedback (0)