Attualità e Information Technology

January 23, 2007

Windows Form Validation

Filed under: IT, .NET

In attesa della versione definitiva della Enterprise Library 3 e del nuovo Validation Application Block, ho trovato un interessante articolo che fornisce un’interessante implementazione di un meccanismo di validazione dei dati per le windows form.
Exploring Secrets of Windows Form Validation

Technorati tags , , ,

AddThis Social Bookmark Button

Applicazioni multi lingua nel mondo Web

Filed under: IT, .NET

Sul sito msdn è comparso un bel articolo sulla internazionalizzazione degli applicativi web. Articolo breve ma chiaro.
Applicazioni multi lingua nel mondo Web

Technorati tags , , , ,

AddThis Social Bookmark Button

January 18, 2007

Service overview and network port requirements for the Windows Server system

Filed under: IT

Interessante articolo in cui vengono elencati un po’ di servizi Microsoft fornendone una descrizione e soprattutto indicando su quali porte di comunicazione lavorino. Ottimo per settare correttamente le impostazioni dei firewall.
Service overview and network port requirements for the Windows Server system

Un esempio:
Message Queuing

Application protocol Protocol Ports
MSMQ TCP 1801
MSMQ UDP 1801
MSMQ-DCs TCP 2101
MSMQ-Mgmt TCP 2107
MSMQ-Ping UDP 3527
MSMQ-RPC TCP 2105
MSMQ-RPC TCP 2103
RPC TCP 135

Technorati tags , , ,

AddThis Social Bookmark Button

Catch Unhandled Exceptions & Send Report

Filed under: IT, .NET

Sempre per la serie “segnamoci un po’ di link da vedere appena si ha un po’ di tempo” ecco una classe che sembra molto carina comparsa tempo addietro su The Code Project: A Simple Class to Catch Unhandled Exceptions in WinForms.

Technorati tags

AddThis Social Bookmark Button

Regular Expression Library

Filed under: IT

Ecco un sito utile dove reperire un po’ di regular expression già pronte all’uso. Non tutte sono “perfette”, ma è comunque una buona base di partenza.
Regular Expression Library

Technorati tags ,

AddThis Social Bookmark Button

Improving .NET Application Performance and Scalability

Filed under: IT, .NET

Dal sito Microsoft un interessante articolo anche se un po’ datato (aprile 2004): Improving .NET Application Performance and Scalability.
Lettura estremamente consigliata.

Technorati tags , , , ,

AddThis Social Bookmark Button

January 16, 2007

Notte bianca NBA su Sky

Filed under: NBA, Sport

Semplicemente fantastico. Veramente un bel regalo da parte di Sky.

Certo, io sarei più felice se le normali repliche delle partite trasmesse normalmente la notte venissero riproposte ad orari decenti. Se non riesco a vedere la diretta alle 2 di notte, è presumibile che non riesca a vedere neppure la replica se viene programmata alle 00:00 del giorno successivo… Probabilmente è proprio la fascia oraria che è scomoda, no? Ma evidentemente è troppo difficile da comprendere per quelli di Sky.

Tornando alla notte bianca: prima partita assai noiosa di Toronto, molto meglio quella degli Spurs. Poi graditissimo regalo: replica della partita dell’anno scorso tra Lakers e Raptors dove Kobe Bryant entrò nella storia con la seconda prestazione di sempre: 81 punti!!
Ora sintesi di Spurs vs. Bulls, poi i Suns e infine Lakers vs. Heat.
Gran nottata insomma!

Technorati tags , , ,

AddThis Social Bookmark Button

January 15, 2007

Manutenzione sito ASP.NET 2.0

Filed under: IT, .NET

Sempre attraverso la newsletter di aspitalia.com ho scoperto un ottimo modo per mettere in manutenzione un sito ASP.NET 2.0: il file app_offline.htm.
Riporto direttamente dal loro sito:

ASP.NET 2.0 include un comodo supporto per mettere un intero sito web in modalita` di manutenzione.
Basta creare un file di nome app_offline.htm ed inserirlo nella root, con un messaggio che avvisi che il sito e` attualmente in manutenzione.

Con la presenza di questo file, ASP.NET 2.0 smettera` di eseguire tutte le richieste ed effettuera` un redirect a questa pagina, evitando che vengano invocati, tra l’altro, HttpHandler o HttpModules, con la certezza di poter operare cambi sul contenuto delle directory riservate, come /bin/, senza che nel frattempo gli utenti visualizzino errori derivanti dall’upload di assembly di grandi dimensioni.

Perche` IE possa visualizzare questa pagina, a causa di un comportamento noto, la stessa deve essere superiore ai 512 bytes di dimensioni.

Technorati tags , , , ,

AddThis Social Bookmark Button

Espressioni regolari per e-mail e date

Filed under: IT

Ecco un paio di regular expression recuperate dalla newsletter di aspitalia.com.

Indirizzo di posta elettronica:

\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

Data:

(((0[1-9]|[12][0-9]|3[01])([/])(0[13578]|10|12)([/])(\d{4}))|
(([0][1-9]|[12][0-9]|30)([/])(0[469]|11)([/])(\d{4}))|
((0[1-9]|1[0-9]|2[0-8])([/])(02)([/])(\d{4}))|((29)(\.|-|\/)(02)([/])([02468][048]00))|
((29)([/])(02)([/])([13579][26]00))|((29)([/])(02)([/])([0-9][0-9][0][48]))|
((29)([/])(02)([/])([0-9][0-9][2468][048]))|((29)([/])(02)([/])([0-9][0-9][13579][26])))

Technorati tags , , , ,

AddThis Social Bookmark Button

January 3, 2007

BitTyrant: A selfish BitTorrent client that improves performance

Filed under: IT

Direttamente da digg:

Researchers from the computer science department at the University of Washington have released BitTyrant, a new BitTorrent client that is designed to improve download performance via strategic selection of peers and upload rates. The client is available for Windows, OS X, and Linux.

read more | digg story

Technorati tags , ,

AddThis Social Bookmark Button

SQL Server 2005 Development Guidelines

Filed under: IT, SQL

Interessante articolo: SQL Server 2005 Development Guidelines - Parte prima
Particolarmente interessante il discorso sulle date: per evitare problemi di collation e localizzazione basta usare le date nel formato yyyymmdd. Quindi ad esempio per recuperare tutte le richieste a partire da oggi fino a fine mese

[…] where dataRichiesta >= ‘20070103′ and dataRichiesta < '20070131'

Technorati tags , , , ,

AddThis Social Bookmark Button

Csv reader

Filed under: IT, .NET

Un discreto csv reader, abbastanza veloce e carino. Ha però qualche limitazione nel caso gli si passi un csv con struttura non fissa. Mi spiego meglio: quando ogni riga ha un numero di campi diverso ecco che non è così banale gestire il file, questo perchè il numero di campi lo calcola basandosi solo sulla prima riga del file. Ad ogni modo: A Fast CSV Reader.

Technorati tags ,

AddThis Social Bookmark Button

ASP.NET e click multipli con validator

Filed under: IT, .NET

Scenario: applicativo web con bottone che lancia un metodo di inserimento in un database. Tempi di risposta del sito lenti. L’utente, non vedendo una risposta in tempi rapidi, preme nuovamente il bottone. Risultato: abbiamo due inserimenti invece che uno.
Come evitarlo? How to prevent multiple clicks of a submit button in ASP.NET. Fate però ben attenzione all’update del post indicato, perchè le prime linee di codice riportare danno problemi se nella pagina si hanno dei validator.
Per completezza riporto il codice corretto:

System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append("if (typeof(Page_ClientValidate) == 'function') { ");
sb.Append("if (Page_ClientValidate() == false) { return false; }} ");
sb.Append("this.value = 'Please wait…';");
sb.Append("this.disabled = true;");
sb.Append(this.Page.GetPostBackEventReference(this.Button1));
sb.Append(";");
this.Button1.Attributes.Add("onclick", sb.ToString());

Se invece siamo su ASP.NET 2.0 il codice cambia leggermente, visto che this.Page.GetPostBackEventReference è deprecato.

System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append("if (typeof(Page_ClientValidate) == 'function') { ");
sb.Append("if (Page_ClientValidate() == false) { return false; }} ");
sb.Append("this.value = 'Attendere…';");
sb.Append("this.disabled = true;");
sb.Append(Page.ClientScript.GetPostBackEventReference(Button1, null));
sb.Append(";");
Button1.Attributes.Add("onclick", sb.ToString());

Giuliano ha anche preparato uno snippet per Visual Studio 2005, di cui allego il sorgente:

<?xml version="1.0" encoding="utf-8" ?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>
Prevent Multiple Click Snippet
</Title>
<Author>Giuliano Trifoglio</Author>
<Description>Evita il doppio click nei bottoni ASP.NET 2.0 mantenendo la validazione</Description>
<Shortcut>MultipleClickPrevent</Shortcut>
</Header>
<Snippet>
<Declarations>
<Literal>
<ID>TestoAttesa</ID>
<ToolTip>Testo che deve assumere il bottone in modalità attesa</ToolTip>
<Default>Attendere…</Default>
</Literal>
<Object>
<ID>Button</ID>
<Type>System.Web.UI.WebControls.Button</Type>
<ToolTip>Il bottone a cui associare il JS che evita il doppio click mantenendo la validazione</ToolTip>
<Default>Button1</Default>
</Object>
</Declarations>
<Code Language="CSharp">
<![CDATA[
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append("if (typeof(Page_ClientValidate) == 'function') { ");
sb.Append("if (Page_ClientValidate() == false) { return false; }} ");
sb.Append("this.value = '$TestoAttesa$';");
sb.Append("this.disabled = true;");
sb.Append(Page.ClientScript.GetPostBackEventReference($Button$, null));
sb.Append(";");
$Button$.Attributes.Add("onclick", sb.ToString());
]]>
</Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>

Technorati tags , , , ,

AddThis Social Bookmark Button
   

Get free blog up and running in minutes with Blogsome | Theme designs available here