Around and About .NET World

Il blog di Marco Minerva
posts - 1671, comments - 2232, trackbacks - 2135

My Links

News

Contattami su Live Messenger:


MCTS: Windows, Web, Distributed Applications & SQL Server

MCPD: Enterprise Applications

Tag Cloud

Archives

Post Categories

Links

Programming

There are 419 entries for the tag Programming
Su ioProgrammo il terzo articolo dedicato a .NET Gadgeteer

Continua la serie degli articoli dedicati a .NET Gadgeteer che sto scrivendo sulla rivista ioProgrammo. Questa volta tocca alla domotica: sul numero di Dicembre (181) mostro come creare un device embedded grazie al quale possiamo accendere una lampadina da remoto attraverso Windows Phone. Correte ad acquistarlo :-) Tag di Technorati: .NET,Programming,.NET Micro Framework,.NET Gadgeteer,C#,Windows Phone

posted @ Thursday, November 22, 2012 2:51 PM | Feedback (3) | Filed Under [ C# .NET Micro Framework Windows Phone ]

Text-To-Speech anche per Javascript e C++

Oggi ho finalmente trovato il tempo di aggiornare la mia libreria per la traduzione e il Text-To-Speech con il servizio Microsoft Translator. Questa release porta con sé un’importante novità: la versione per Windows Store adesso è un Windows Runtime Component, e quindi può essere utilizzata, oltre che da C#/VB .NET, anche con Javascript e C++. Come sempre, potete scaricarla da CodePlex oppure tramite NuGet (il nome del package è TranslatorService.Speech). Tag di Technorati: .NET,Programming,C#,VB.NET,Windows Phone,WinRT,CodePlex

posted @ Thursday, November 1, 2012 9:02 PM | Feedback (4) | Filed Under [ C# VB .NET CodePlex .NET 4.0 Windows Phone WinRT & Windows 8 ]

Piccolo promemoria: logging di un servizio WCF

In caso di problemi di comunicazione con un servizio WCF, spesso il logging delle attività permette di capire facilmente cosa non funziona. Per abilitarlo, è sufficiente aggiungere la seguente sezione nel file web.config: 1: <system.diagnostics> 2: <sources> 3: <source name="System.ServiceModel" 4: switchValue="Information, ActivityTracing" 5: ...

posted @ Tuesday, October 23, 2012 9:53 PM | Feedback (2) | Filed Under [ WCF ]

Servizi Web con .NET Gadgeteer su ioProgrammo

Il secondo articolo dedicato a .NET Gadgeteer è stato pubblicato sul numero di Novembre (180) di ioProgrammo. Questa volta mi occupo della creazione di servizi Web sul dispositivo, per ottenere informazioni dal device oppure comandare il suo funzionamento. Il divertimento continua :-) Tag di Technorati: .NET,Programming,.NET Micro Framework,.NET Gadgeteer,C#

posted @ Tuesday, October 23, 2012 9:33 AM | Feedback (1) | Filed Under [ C# .NET Micro Framework Visual Studio 2010 ]

Utilizzare SQLite in un'applicazione Windows Store

WinRT non comprende il namespace System.Data: non offre supporto per la connessione diretta a database, e quindi neanche Entity Framework. D'altra parte, neppure SQL Compact può essere utilizzato con le Windows Store apps. La conseguenza è che, per accedere ad un database, dobbiamo passare attraverso servizi WCF, Azure, ecc. Se la nostra applicazione ha bisogno di un database locale, su file, possiamo però utilizzare SQLite, di cui è stata rilasciata da qualche tempo la versione ufficiale per WinRT, con supporto alle architetture x86, x64 e ARM. Tale release è pienamente compatibile con le Windows Store apps, quindi passa la certificazione (a...

posted @ Monday, October 8, 2012 11:25 PM | Feedback (0) | Filed Under [ LINQ WinRT & Windows 8 Visual Studio 2012 ]

Un po' di chiarezza sull'in-place upgrade a .NET 4.5

Il .NET Framework 4.5 è rilasciato come un in-place upgrade della versione 4.0. Questo significa che .NET 4.5 sostituisce completamente la release precedente sul PC, senza modificarne il numero di versione. Come si può leggere nel post .NET 4.5 is an in-place replacement for .NET 4.0 di Rick Strahl: When you install .NET 4.5 your .NET 4.0 assemblies in the \Windows\.NET Framework\V4.0.30319 are overwritten with a new set of assemblies. You end up with overwritten assemblies as well as a bunch of new ones (like the new System.Net.Http assemblies for example). […] The 4.5 update completely replaces the .NET 4.0 runtime...

posted @ Thursday, September 13, 2012 10:08 AM | Feedback (5) | Filed Under [ C# VB .NET ASP .NET .NET 4.5 Visual Studio 2012 ]

News Voice Reader disponibile nel Windows Store

Da ieri la mia applicazione per Windows 8, News Voice Reader, è disponibile nel Windows Store. Si tratta di un lettore vocale di feed RSS, che sfrutta il servizio Microsoft Translator per leggere le news. Naturalmente ci sono ampi margini di miglioramento, ed ho già in mente diverse nuove funzionalità da aggiungere. Spero di trovare presto il tempo di realizzarle! Ne approfitto per ringraziare Lorenzo per la sua infinita disponibilità e Dario Chini per avermi "prestato" il suo PC per il beta testing :-) Tag di Technorati: Windows,Programming,.NET

posted @ Tuesday, September 11, 2012 9:57 AM | Feedback (6) | Filed Under [ WinRT & Windows 8 ]

Introduzione a .NET Gadgeteer su ioProgrammo

Sul numero di Settembre di ioProgrammo (178) è stato pubblicato il mio articolo Introduzione a .NET Gadgeteer. Si tratta del primo di una serie in cui illustrerò le caratteristiche della piattaforma, dal punto di vista hardware e software, e come utilizzarla per realizzare dispositivi embedded in modo estremamente facile e veloce, anche senza avere conoscenze di elettronica.   Spero che il mio lavoro possa contribuire ad aumentare la conoscenza e la diffusione di questa fantastica piattaforma, con cui personalmente mi diverto da matti! Tag di Technorati: .NET,Programming,.NET Micro Framework,.NET Gadgeteer,C#

posted @ Tuesday, August 21, 2012 1:08 PM | Feedback (2) | Filed Under [ C# .NET Micro Framework Visual Studio 2010 ]

Da Apress sconto del 40% per gli utenti di DotNetToscana

In questa calda estate, mentre molti hanno appena scaricato o stanno scaricando le RTM di Windows 8 e Visual Studio 2012, DotNetToscana, grazie alla sponsorizzazione di Apress, offre uno sconto del 40% sull'acquisto dell'e-book Pro C# and the .NET 4.5 Framework. L'offerta è valida fino al 15 Settembre. Per approfittarne, è sufficiente registrarsi sul sito DotNetToscana e scaricare il coupon disponibile nella sezione Benefit. Tag di Technorati: Community,.NET,Programming,Visual Studio,C#,Windows 8,WinRT

posted @ Friday, August 17, 2012 1:09 PM | Feedback (3) | Filed Under [ C# Community .NET 4.5 WinRT & Windows 8 Visual Studio 2012 ]

Rilasciato TranslatorService.Speech per WinRT

Ho aggiornato la mia libreria per il Text-To-Speech con Microsoft Translator aggiungendo il supporto a WinRT. Come sempre, è possibile scaricarla da CodePlex, dove ho pubblicato anche una semplice applicazione di esempio. In alternativa, è disponibile su NuGet. Il package è sempre TranslatorService.Speech, ma ora comprende anche la versione WinRT: a seconda del tipo di progetto che si sta utilizzando, sarà automaticamente aggiunta la reference alla versione corretta. Ora voglio effettuare il porting su Silverlight ed inoltre creare una versione ad hoc per .NET 4.5: anche se quella per la versione 4 funziona correttamente, voglio realizzare una versione...

posted @ Sunday, July 29, 2012 12:40 PM | Feedback (7) | Filed Under [ CodePlex .NET 4.0 .NET 4.5 WinRT & Windows 8 ]

[.NET Gadgeteer] Il mio Robot controllato da Windows Phone

I miei esperimenti con .NET Gadgeteer continuano senza sosta, perché mi diverto troppo… Questa volta, ho realizzato un Robot controllato via Wi-Fi da un'applicazione Windows Phone, con streaming delle immagini catturate dalla camera installata nella sua parte frontale: Tutti i dettagli di realizzazione, insieme al codice dell'applicazione .NET Gadgeter e di quella per Windows Phone, sono disponibili nell'articolo Wi-Fi Gadgeteer Robot controlled by Windows Phone with image streaming. Tag di Technorati: .NET,Programming,.NET Micro Framework,.NET Gadgeteer,Windows Phone

posted @ Wednesday, July 11, 2012 10:38 AM | Feedback (0) | Filed Under [ C# .NET Micro Framework Windows Phone ]

Visual Studio 2012 Express per le applicazioni Desktop

Ero abbastanza sicuro che ci sarebbe stato un cambiamento di rotta: E’ di poco fa l’annuncio che Visual Studio 2012 Express permetterà di sviluppare anche applicazioni Desktop “tradizionali”, e non solo app Metro, come era stato detto all’inizio. L’annuncio ufficiale è sul blog di Visual Studio. Tag di Technorati: .NET,Programming,Visual Studio 2010,Updates

posted @ Friday, June 8, 2012 7:19 PM | Feedback (6) | Filed Under [ Updates & Service Pack Visual Studio 2010 WinRT & Windows 8 ]

Porting a Windows 8 Release Preview

Questa sera ho terminato il porting della mia App alla Release Preview di Windows 8. In realtà, l’operazione in sé è stata abbastanza veloce, ma ne ho approfittato per fare un po’ di refactoring sul codice, che non guasta mai. Ho dapprima dato un’occhiata ai nuovi template prodotti da Visual Studio 2012 RC ed ho notato che alcune cose erano molto diverse rispetto alla versione precedente (in particolare, la pagina base LayoutAwarePage). Quindi, invece di aprire direttamente il progetto, ho creato una nuova Metro Style App ed ho inserito al suo interno i file della mia applicazione. Un’altra differenza importante è rappresentata...

posted @ Wednesday, June 6, 2012 1:36 AM | Feedback (2) | Filed Under [ Updates & Service Pack WinRT & Windows 8 Visual Studio 2012 ]

Text-To-Speech su CodePlex

Come anticipato nei giorni scorsi, ho spostato su CodePlex la mia libreria per il Text-To-Speech con il servizio Microsoft Translator. Per l'occasione, ho fatto un piccolo aggiornamento, portandola alla release 1.3.1, e, cosa più importante, ho rilasciato anche la versione per Windows Phone. Naturalmente, il package su NuGet è anch'esso aggiornato. Tag di Technorati: .NET,Programming,C#,Windows Phone,CodePlex

posted @ Friday, June 1, 2012 10:56 AM | Feedback (3) | Filed Under [ C# CodePlex .NET 4.0 Windows Phone ]

Nuova versione della libreria per il Text-To-Speech

La mia libreria per il Text-To-Speech con Microsoft Translator è giunta alla versione 1.3. In questa nuova release ho aggiunto una funzionalità di riconoscimento automatico della lingua. Come sempre, può essere scaricata tramite NuGet. Nell’esempio disponibile su MSDN Code Gallery, inoltre, è adesso presente anche un’applicazione WPF di esempio, che si affianca alla classica Console Application: Si tratta dell’ultima versione che pubblicherò su MSDN Code Gallery. Ho in progetto di effettuare il porting della libreria su altre piattaforme (le versioni per Windows Phone e WinRT sono quasi pronte), quindi per gestire meglio il progetto, sposterò tutto...

posted @ Sunday, May 27, 2012 7:37 PM | Feedback (0) | Filed Under [ C# CodePlex .NET 4.0 WPF WinRT & Windows 8 ]

Ho preso il gettone

Ieri la mia applicazione per Windows 8, News Voice Reader, ha ottenuto il token per lo store di Windows 8. L’incontro in Microsoft è stata anche l’occasione per un interessante confronto e una discussione sulle problematiche che bisogna tenere sempre presenti quando si sviluppa per Metro. Sono molto contento che la mia applicazione sia stata considerata originale. Ho ricevuto una serie di suggerimenti interessanti che nei prossimi giorni metterò in pratica, ma essere entrato nella Hall of Fame di Windows 8 è una bella soddisfazione :-) Tag di Technorati: .NET,Programming,WinRT

posted @ Friday, May 25, 2012 12:26 AM | Feedback (3) | Filed Under [ WinRT & Windows 8 ]

E' tornato il colore!

Una delle maggiori critiche rivolte alle beta di Visual Studio 11 riguarda l'interfaccia piatta e grigia. Accogliendo i numerosi feedback a riguardo, nella versione RC, prevista per l'inizio di Giugno, vedremo finalmente tornare un po' di colore. La "base" sarà sempre griglia, ma questa volta avremo un colore più chiaro: Complessivamente, questo restyling mi piace… A parte i menu tutti in maiuscolo, che secondo me sono davvero brutti… Ma c'è ancora tempo, quindi spero che vengano sistemati. Per maggiori informazioni sulle novità, consiglio di dare un'occhiata al blog di Visual Studio. Tag di Technorati: .NET,Programming,Visual Studio,Updates

posted @ Tuesday, May 8, 2012 10:25 PM | Feedback (9) | Filed Under [ Updates & Service Pack Visual Studio 2012 ]

Un nuovo articolo su Channel9

E’ sempre bello sapere che i propri contributi sono apprezzati. E’ quindi con grande gioia che ho scoperto che, per la terza volta, un mio post è stato segnalato su Channel9. Questa volta è toccato all’articolo sulla comunicazione via Bluetooth tra un’applicazione desktop e un sistema .NET Gadgeteer. Farò di tutto per mantenere questo trend positivo. Tag di Technorati: .NET,Programming,.NET Micro Framework

posted @ Saturday, May 5, 2012 2:54 PM | Feedback (9) | Filed Under [ .NET Micro Framework ]

[.NET Gadgeteer] Inviare messaggi via Bluetooth usando 32feet.NET

Ho pubblicato sul blog di Micheal Dodaro un articolo che spiega come inviare messaggi via Bluetooth da un PC ad un device .NET Gadgeteer usando la libreria open source 32feet.NET (nota personale: è la stessa che ho utilizzato per la mia tesi di laurea). Tag di Technorati: .NET,Programming,.NET Micro Framework,Gadgeteer

posted @ Sunday, April 22, 2012 1:32 PM | Feedback (0) | Filed Under [ .NET Micro Framework ]

Microsoft Translator: la sottoscrizione al servizio è diventata obbligatoria

Ieri sera ho iniziato a lavorare al porting su Windows Phone della mia libreria per il Text-To-Speech con Microsoft Translator. Ad un certo punto, il servizio ha iniziato a restituire il codice di errore 400 (Bad Request) ad ogni mia richiesta: l’unica cosa che riuscivo ad ottenere era la lista dei linguaggi supportati dal Text-To-Speech. Dopo aver fatto qualche ricerca, sono arrivato alla pagina Microsoft Translator sul Windows Azure Marketplace, in cui sono elencati i costi del servizio, in base al numero di caratteri inviati al mese. L’ultima opzione, fino a 2.000.000 di caratteri, è gratuita. Ho quindi effettuato...

posted @ Wednesday, April 18, 2012 8:45 PM | Feedback (0) | Filed Under [ C# VB .NET .NET 4.0 WPF Windows Phone ]

Nuovo articolo su DotNetToscana

Su DotNetToscana è disponibile un nuovo articolo: Recuperare la posizione con Windows 8 (prima parte), in cui mostro come utilizzare le nuove Geolocation API fornite da WinRT per ottenere latitudine e longitudine del luogo in cui si ci trova. Si tratta di un articolo introduttivo, ma potrebbe essere il primo di una lunga serie, quindi rimanete sintonizzate sulla nostra Community! Tag di Technorati: .NET,Programming,C#,WinRT,Windows 8

posted @ Monday, April 9, 2012 3:01 PM | Feedback (1) | Filed Under [ C# .NET 4.5 WinRT & Windows 8 ]

[.NET Gadgeteer] Nuovi moduli disponibili

Sono appena stati rilasciati ben 12 nuovi moduli per .NET Gadgeteer. Tra gli altri, quelli secondo me più interessanti sono il VideoOut, per la connessione di uno schermo VGA, il ricevitore infrarosso e il modulo per la lettura di tag RFID. Ma, stando a quello che si legge sul forum del TinyCLR, a breve dovrebbero esserci nuove uscite… Insomma, il team è più attivo che mai! Tag di Technorati: .NET,Programming,.NET Micro Framework

posted @ Saturday, April 7, 2012 5:57 PM | Feedback (3) | Filed Under [ .NET Micro Framework ]

Di nuovo su Channel9

Per la seconda volta, un mio contributo è stato recensito su Channel9. Oggi tocca all’applicazione Windows Phone che controlla un servomeccanismo gestito da un device .NET Gadgeteer. Quest'ultima parte del sistema è stata sviluppata dall'amico Micheal Dodaro. E' bello scoprire che i miei lavori suscitano questo interesse. Tag di Technorati: .NET,Programming,.NET Micro Framework

posted @ Friday, April 6, 2012 10:26 PM | Feedback (0) | Filed Under [ .NET Micro Framework ]

Traduzioni localizzate dei messaggi di errore

Alzi la mano chi non ha mai inserito in Google un messaggio di errore di .NET, alla ricerca di una spiegazione del problema: così facendo, infatti, spesso possiamo trovare descrizioni dettagliate, con precise indicazioni su come risolvere l'inghippo. Tuttavia, se utilizziamo una versione localizzata del Framework .NET (oppure se installiamo un'applicazione in un PC con la versione localizzata del Framework), anche i messaggi di errore sono tradotti. Come ben sappiamo, invece, abbiamo maggiori possibilità di trovare informazioni se cerchiamo il messaggio in inglese. Ma c'è un problema: spesso le traduzioni dall'inglese lasciano molto a desiderare (per non dire di...

posted @ Friday, April 6, 2012 6:21 PM | Feedback (1) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET Micro Framework Orcas & .NET 3.5 Silverlight LINQ .NET 4.0 Visual Studio 2010 AJAX WPF Windows Phone WCF ]

Rilasciato il Windows Phone SDK 7.1.1

E’ stato da poco rilasciato l’aggiornamento 7.1.1 per il Windows Phone SDK. Le principali novità sono due: Il supporto allo sviluppo di applicazioni in grado di funzionare anche sui nuovi device dotati di 256 MB di memoria La possibilità di sviluppare con Windows 8 Consumer Preview Maggiori dettagli e il collegamento per il download sono disponibili seguendo l’annuncio ufficiale. Tag di Technorati: .NET,Programming,Updates,Windows Phone

posted @ Tuesday, March 27, 2012 1:45 AM | Feedback (0) | Filed Under [ Updates & Service Pack Windows Phone ]

Articolo su async e await con C# 5

Ho appena pubblicato su DotNetToscana un articolo introduttivo sull’utilizzo delle parole chiave async e await con .NET 4.5/C# 5. Tag di Technorati: .NET,Programming,C#

posted @ Sunday, March 25, 2012 7:30 PM | Feedback (0) | Filed Under [ C# .NET 4.5 ]

Comunicazione tra processi diversi con Memory Mapped File

Qualche tempo fa ho scritto un post in cui ho parlato dell’utilizzo dei Memory Mapped File con C#. Prendendo spunto da esso, ho realizzato una libreria che sfrutta un file condiviso per realizzare la comunicazione tra due processi diversi: Come sempre, la potete trovare su MSDN Code Gallery. Tag di Technorati: .NET,Programming,C#

posted @ Friday, March 16, 2012 10:03 PM | Feedback (0) | Filed Under [ C# .NET 4.0 ]

Traduzioni con TranslatorService.Speech

Lo scorso weekend ho pubblicato una nuova versione della mia libreria per il Text-To-Speech. Ora espone un nuovo metodo, Translate (e la corrispondente versione asincrona TranslateAsync), che permette di ottenere solo la traduzione del testo, senza richiedere lo stream del parlato. Inoltre, ho aggiunto la proprietà AutomaticTranslation, che se impostata a false non richiede la traduzione del testo quando si recupera lo stream audio. In questo modo, è possibile velocizzare l’esecuzione quando abbiamo già il testo nella lingua corretta (e quindi non abbiamo bisogno di traduzioni). Come sempre, la potete trovare su MSDN Code Gallery e su NuGet, con nome TranslatorService.Speech. Tag di Technorati:...

posted @ Monday, March 12, 2012 8:47 PM | Feedback (0) | Filed Under [ C# VB .NET .NET 4.0 ]

La mia libreria per il Text-To-Speech su Channel9

Questa mattina, con grandissima sorpresa ed estremo piacere, ho scoperto che la mia libreria per il Text-To-Speech è oggetto di un post su Channel9. Sono molto felice che stia riscuotendo questo successo, quindi continuerò sicuramente a lavorarci sopra. Insomma, sono soddisfazioni… Tag di Technorati: .NET,Programming,C#,VB.NET

posted @ Saturday, March 10, 2012 12:49 PM | Feedback (0) | Filed Under [ C# VB .NET .NET 4.0 ]

Articolo sull’uso di MongoDB con C#

Finalmente ho trovato il tempo di fare qualche prova con MongoDB, un interessante database NoSQL di tipo document-oriented. Ne ho così approfittato per scrivere un articolo sull’argomento, in cui fornisco un’introduzione al suo utilizzo con C#. Come sempre, se siete interessati e/o incuriositi, mi farebbe piacere sapere cosa ne pensate! Tag di Technorati: .NET,Programming,C#,ADO .NET

posted @ Sunday, March 4, 2012 11:28 PM | Feedback (3) | Filed Under [ C# SQL Server ]

Encode e Decode di HTML e Url con il .NET Client Profile

Qualche giorno fa ho parlato di un possibile problema che si può avere usando una libreria per il “Full” Profile in un progetto che invece si appoggia al profilo Client. Come detto, il Client Profile è la scelta consigliata quando sviluppiamo applicazioni client. Tuttavia, anche in questo caso spesso si ha necessità di usare classi che fanno parte del Full Profile. Ad esempio, se dobbiamo effettuare l’encode/decode di stringhe HTML e Url, è naturale pensare ai metodi della classe HttpServerUtility, che però è contenuta nell’assembly System.Web.dll, che non fa parte del Client Profile. D’altra parte, può sembrare esagerato...

posted @ Wednesday, February 29, 2012 8:45 PM | Feedback (0) | Filed Under [ C# VB .NET Orcas & .NET 3.5 .NET 4.0 Visual Studio 2010 ]

Nuova versione della mia libreria per il Text-To-Speech

Qualche settimana fa ho parlato della mia libreria per il Text-To-Speech con il .NET Framework. Nel frattempo, il servizio Microsoft Translator, su cui la libreria si appoggia, è stato spostato su Azure ed è stato arricchito di nuove funzionalità. Ora è possibile ottenere il parlato in formato WAV oppure MP3 e specificarne la qualità. Uno dei maggiori cambiamenti è che il meccanismo di accesso basato sul Bing Application ID, usato nella versione precedente, non è più supportato. Il nuovo servizio utilizza un sistema basato su token, compatibile con lo standard OAuth. Di conseguenza, per usare il servizio...

posted @ Monday, February 27, 2012 1:00 AM | Feedback (4) | Filed Under [ C# VB .NET .NET Micro Framework .NET 4.0 ]

Applicazioni Client Profile e librerie Full Profile

Le applicazioni per Windows create con Visual Studio 2010, siano esse WPF, Windows Forms o Console, utilizzano di default il .NET 4 Client Profile, ovvero un sottoinsieme del .NET Framework ottimizzato proprio per le applicazioni client. Al contrario, le Class Library sono configurate per usare il “Full Profile”, ovvero l’intera Base Class Library di .NET. Questo può portare ad un problema nel momento in cui utilizziamo un assembly che non fa parte del Client Profile. Infatti, se proviamo ad utilizzare tale libreria in un’applicazione Client Profile, otterremo un errore, perché stiamo tentando di accedere ad oggetti che sfruttano una...

posted @ Saturday, February 25, 2012 5:09 PM | Feedback (2) | Filed Under [ C# VB .NET .NET 4.0 Visual Studio 2010 ]

Jump List con Windows Forms

Ho appena pubblicato su DotNetToscana un articolo in cui presento la mia nuova libreria, Jump List Helpers, che permette di aggiungere una Jump List alle proprie applicazioni Windows Forms e, cosa più interessante, fornisce un sistema per ricevere notifiche quando si seleziona un comando. Per capire quest’ultima affermazione, è necessaria una precisazione: le voci mostrate in una Jump List possono solo avviare programmi, URL o file: non è possibile inviare comandi direttamente all'applicazione a cui la Jump List appartiene. La mia libreria supera questa limitazione: sfrutta le funzionalità del Windows API Code Pack e definisce una serie di metodi che facilitano...

posted @ Sunday, February 19, 2012 9:46 PM | Feedback (0) | Filed Under [ C# Visual Studio 2010 ]

Interessante post sull’utilizzo dei Task in .NET 4.0

Girovagando su Internet, ho trovato un articolo che illustra in maniera molto semplice l'utilizzo della classe Task. Gli esempi forniti permettono di comprendere immediatamente la potenza di questo oggetto. Esso fa parte di una serie di 20 post, Parallelism in .NET, dedicati alla Task Parallel Library e a PLINQ. Caldamente consigliato a chi vuote approfondire l’argomento (quindi spero la maggior parte dei programmatori .NET…). Tag di Technorati: .NET,Programming,C#,VB .NET,Silverlight,WPF,ASP .NET

posted @ Saturday, February 18, 2012 6:25 PM | Feedback (0) | Filed Under [ C# VB .NET Silverlight .NET 4.0 Visual Studio 2010 WPF ]

Controllo ortografico con WPF

Una cosa forse non molto conosciuta è che WPF supporta il controllo ortografico durante la digitazione per i controlli TextBox e RichTextBox. Per abilitarlo, è sufficiente impostare la relativa attached property SpellCheck.IsEnabled su true. Inoltre, tramite la proprietà Language, è impossibile impostare la lingua del correttore: <TextBox SpellCheck.IsEnabled="True" Language="en-US" Height="25" Width="200" /> Purtroppo, il controllo ortografico supporta solo 4 lingue: inglese, francese, tedesco e spagnolo. In pratica, esso funziona solo se la lingua del nostro sistema è una di queste. L’oggetto SpellCheck espone anche un’altra proprietà interessante, CustomDictionaries, con cui possiamo aggiungere dizionari personalizzati al correttore...

posted @ Saturday, February 11, 2012 4:42 PM | Feedback (1) | Filed Under [ C# VB .NET WPF ]

Rilasciato Entity Framework 4.3

E’ stata da poco rilasciata la versione 4.3 di Entity Framework, già disponibile anche su NuGet. Sul blog del team di ADO .NET è possibile leggere l’annuncio ufficiale. Tag di Technorati: .NET,Programming,Entity Framework,Updates

posted @ Friday, February 10, 2012 2:46 AM | Feedback (1) | Filed Under [ ADO .NET & SQL Updates & Service Pack ]

Light Script Engine, una libreria per la compilazione dinamica con C#

Ho pubblicato su MSDN Code Gallery una libreria, chiama Light Script Engine, che permette di compilare dinamicamente porzioni di codice C#. Può essere utilizzata, ad esempio, per aggiungere un motore di scripting alle proprie applicazioni. Il sistema, inoltre, fornisce automaticamente un meccanismo con cui passare argomenti al codice dinamico e ricevere valori di ritorno. Il file ZIP disponibile contiene, oltre alla libreria vera e propria, anche un’applicazione WPF con alcuni pezzi di codice già impostati, grazie ai quali è possibile verificare immediatamente il funzionamento dell’engine: Su DotNetToscana è disponibile un articolo che illustra più nel dettaglio le sue caratteristiche e fornisce alcuni esempi delle sue...

posted @ Thursday, February 9, 2012 12:54 AM | Feedback (2) | Filed Under [ C# ]

Superare il limite sulla lunghezza dei file con le funzioni native di Windows

Utilizzando i metodi per la copia e lo spostamento dei file messi a disposizione dalla classe System.IO.File, se si lavora con percorsi troppo lunghi, si ottiene una PathTooLongException, secondo cui i path devono essere minori di 248 caratteri e i nomi dei file non possono avere più di 260 caratteri. Per aggirare il problema, si possono utilizzare le funzioni delle API di Windows, avendo l'accortezza di specificare il prefisso \\?\ davanti al nome del file. Nel post Getting around PathTooLongException on file move with Windows Native API di Gal Ratner è descritta una semplice classe che mostra l'utilizzo di...

posted @ Sunday, February 5, 2012 8:40 PM | Feedback (0) | Filed Under [ C# ]

[.NET Gadgeteer] La mia applicazione sul sito ufficiale

L’applicazione per .NET Gadgeteer che ho realizzato insieme a Micheal Dodaro, .NET Gadgeteer Servo Camera & Windows Phone Client, è stata inserita nel sito ufficiale di .NET Gadgeteer. In questo momento compare direttamente nella Home Page come Featured Project. Anche queste sono soddisfazioni, e un chiaro stimolo a continuare sulla strada che ho intrapreso. Tag di Technorati: .NET,Programming,.NET Micro Framework

posted @ Tuesday, January 31, 2012 11:16 PM | Feedback (2) | Filed Under [ .NET Micro Framework ]

AutoMapper, una libreria indispensabile

AutoMapper è una libreria indispensabile in tutti quei casi in cui è necessario mappare un oggetto su un altro. Esempio tipico è quando abbiamo un oggetto che rappresenta un’entità del database e lo vogliamo utilizzare per impostare le proprietà di un nostro oggetto di business. Questa attività, estremamente noiosa e ripetitiva, grazie ad AutoMapper si realizza con una semplice riga di codice. AutoMapper è un progetto open source disponibile su GitHub. Può anche essere scaricato direttamente tramite NuGet. Su CodeProject, inoltre, si può trovare un articolo che mostra come muovere i primi passi con la libreria. Tag di Technorati: .NET,Programming,C#,VB .NET,ASP .NET,Silverlight

posted @ Monday, January 23, 2012 10:12 PM | Feedback (14) | Filed Under [ C# VB .NET ASP .NET Silverlight .NET 4.0 Visual Studio 2010 ]

[.NET Gadgeteer] Text-To-Speech per .NET Micro Framework

Ho completato il porting della mia libreria per il Text-To-Speech sulla piattaforma .NET Micro Framework. Come sempre, l’ho pubblicata su MSDN Code Gallery, dove è possibile trovare anche gli esempi del suo semplicissimo utilizzo. La libreria è anche disponibile su NuGet. E’ sufficiente effettuare una ricerca per TranslatorService.Speech. All’interno di questo package si trovano sia la nuova versione per il .NET Micro Framework, sia quella per il “Full”. In base al tipo di progetto, Visual Studio referenzierà la libreria corretta. Tag di Technorati: .NET,Programming,C#,.NET Micro Framework,NuGet

posted @ Saturday, January 21, 2012 9:37 PM | Feedback (0) | Filed Under [ C# .NET Micro Framework ]

Memory-Mapped File con C# 4.0

Una della novità di C# 4.0 è il supporto ai memory-mapped files. Le nuove classi contenute nel namespace System.IO.MemoryMappedFiles consentono di creare file mappati in memoria che possono essere letti e scritti da processi diversi. Guardiamo ad esempio una Console Application che apre un memory mapped file e scrive un messaggio al suo interno: 1: static void Main(string[] args) 2: { 3: Console.WriteLine("Scrittura di un messaggio su un memory mapped file..."); 4:  5: using (var file = MemoryMappedFile.CreateNew("share", 4096)) 6:...

posted @ Tuesday, January 17, 2012 11:18 PM | Feedback (4) | Filed Under [ C# .NET 4.0 ]

Nuova versione della mia libreria per il Text-To-Speech. Anche su NuGet

Pochi minuti fa ho caricato su MSDN Code Gallery la nuova versione della mia libreria per il Text-To-Speech basato sul servizio Microsoft Translator Service. La novità più significativa è l’aggiunta delle versioni asincrone dei metodi. Ad esempio, la controparte asincrona di GetSpeakStream è il nuovo metodo GetSpeakStreamAsync, che ritorna immediatamente e, una volta recuperato lo stream contenente il parlato, genera l’evento GetSpeakStreamCompleted. Ci sono poi i metodi Speak e SpeakAsync, che si occupano di ottenere lo stream tramite il servizio Microsoft e di riprodurlo automaticamente, semplificando quindi l’utilizzo della libreria: // Per ottenere un Application ID, visita la pagina http://msdn.microsoft.com/en-us/library/ff512420.aspx SpeechSynthesizer speech...

posted @ Saturday, January 14, 2012 8:32 PM | Feedback (3) | Filed Under [ C# Updates & Service Pack .NET 4.0 ]

Inviare file ad un servizio WCF REST

Ho pubblicato su MSDN Code Gallery un servizio WCF REST che permette di inviare e scaricare file da un server remoto. L'esempio include anche una piccola applicazione WPF, senza fronzoli o pattern particolari, che mostra l'utilizzo di tale servizio da parte di un client. Attualmente, il servizio e l'applicazione sono disponibili unicamente in C#, ma a breve aggiungerò anche la versione VB .NET del codice. Tag di Technorati: .NET,Programming,C#,WCF,REST

posted @ Tuesday, January 10, 2012 10:24 PM | Feedback (0) | Filed Under [ C# WCF ]

[.NET Gadgeteer] Nuova versione dell’SDK per .NET Gadgeteer

Da pochi giorni è stata rilasciata la nuova versione dell’SDK di .NET Gadgeteer fornito da GHI Electronics. E’ compatibile con le schede FEZ Spider e Hydra e include anche il supporto ai moduli realizzati da Seeed Studios. Può essere scaricato dal sito TinyCLR. Tag di Technorati: .NET,Programming,.NET Micro Framework

posted @ Sunday, January 8, 2012 6:48 PM | Feedback (1) | Filed Under [ .NET Micro Framework ]

Text-To-Speech anche in VB .NET

Seguendo le numerose richieste ricevete via mail, ho aggiornato il mio esempio di Text-To-Speech tramite il servizio Microsoft Translator, Speech Synthesis with Microsoft Translator service, aggiungendo anche la versione Visual Basic della libreria. Come sempre, è possibile scaricarla dall'indirizzo http://code.msdn.microsoft.com/Speech-Synthesis-with-7658fa03. Tag di Technorati: .NET,Programming,VB .NET,MSDN

posted @ Sunday, January 8, 2012 1:42 PM | Feedback (0) | Filed Under [ VB .NET ]

Finestre WPF senza icona

Quest'oggi ho cercato di fare una cosa all'apparenza banale: creare una finestra di WPF senza l'icona sulla sinistra (ovvero lo stesso risultato che si ottiene impostando la proprietà ShowIcon di una Windows Form su false). Ebbene, NON è possibile: WPF non espone una proprietà che permette di nascondere tale icona. Per ottenere il risultato voluto, l'unica soluzione è ricorrere alle funzioni dell'API di Windows, come descritto nel post A WPF Window Without a Window Icon (the thing you click to get the system menu). In sintesi, si deve eseguire l'override del metodo OnSourceInitialized ed utilizzare il Platform Invoke...

posted @ Saturday, January 7, 2012 2:23 PM | Feedback (1) | Filed Under [ C# WPF ]

Convertire un orario da UTC a ora locale

Quest'oggi avevo la necessità di convertire un orario in formato UTC, prelevato da un database, nell'orario locale. Il tipo DateTime mette a disposizione un metodo, ToLocalTime, che sembra perfetto per questo scopo. Tuttavia, il suo utilizzo "diretto" non porta il risultato sperato. Il motivo è semplice: se leggo un campo datetime da un database e lo salvo in una variabile DateTime, .NET suppone che tale orario sia espresso nel formato locale, quindi se su tale variabile invoco il metodo ToLocalTime, ottengo di nuovo l'orario originale. Per ottenere il risultato voluto, è necessario utilizzare un'istruzione come la seguente: ...

posted @ Tuesday, January 3, 2012 8:38 PM | Feedback (1) | Filed Under [ C# VB .NET ASP .NET SQL Server ]

Text-To-Speech con il Microsoft Translator Service

Ho pubblicato su MSDN Code Gallery un esempio che sfrutta le API messe a disposizione dal Microsoft Translator Service per ottenere lo stream audio contenente la lettura del testo specificato. Tag di Technorati: .NET,Programming,C#,MSDN

posted @ Friday, December 30, 2011 7:12 PM | Feedback (0) | Filed Under [ C# ]

Aggiungere i controlli del Windows Phone Toolkit alla Toolbox di Visual Studio

Provando ad aggiungere i controlli del Windows Phone Toolikit alla Toolbox di Visual Studio, ho ottenuto un messaggio di errore abbastanza criptico: Per qualche strano motivo, in alcuni casi la presenza del .NET Micro Framework impedisce di aggiungere nuovi elementi alla casella degli strumenti di Visual Studio. Le prime soluzioni trovate suggerivano di disinstallare il .NET Micro Framework, ma poi ho scovato una via molto più semplice e meno invasiva. E' sufficiente rinominare il file FrameworkList.xml che si trova nella cartella C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETMicroFramework\v4.1\RedistList. In questo modo, diventa possibile aggiungere i controlli del Toolkit alla...

posted @ Thursday, December 29, 2011 1:35 PM | Feedback (0) | Filed Under [ .NET Micro Framework Visual Studio 2010 ]

SQL Server Compact 4.0 e applicazioni desktop

SQL Server Compact 4.0 non supporta le applicazioni desktop. Se a queste ultime si cerca di aggiungere un tale database, si ottiene un messaggio di errore: The version of the Microsoft SQL Server Compact database that you are adding to the project is not supported by the project type. The database will be added to the project, but tool such as the Dataset Designer will not work with this database. Più precisamente, ciò significa che non è possibile aggiungere Entity Data Model ad un'applicazione Windows. SQL Server Compact 4.0 con Entity Framework è supportato...

posted @ Wednesday, December 28, 2011 1:52 PM | Feedback (0) | Filed Under [ SQL Server .NET 4.0 Visual Studio 2010 ]

Servizi REST e risposte in formato JSON

Utilizzando il WCF Rest Template 40, è molto semplice creare un servizio WCF REST in C#: esso, infatti, definisce una serie di metodi di esempio ed inserisce nel file web.config tutte le configurazioni necessarie per questo tipo di servizio. Di default, i messaggi di risposta sono serializzati in formato XML. Il custom attribute WebInvoke permette però di indicare il formato desiderato: i valori possibili sono Xml o Json. Tuttavia, anche se si indica quest'ultimo, la risposta viene sempre ottenuta in XML. Per avere il Json, si deve modificare il file web.config. In particolare, nella riga <standardEndpoint name="" helpEnabled="true" automaticFormatSelectionEnabled="true"/>   Si deve modificare...

posted @ Tuesday, December 27, 2011 1:29 PM | Feedback (3) | Filed Under [ C# ASP .NET .NET 4.0 Visual Studio 2010 ]

Aggiornamento a .NET Framework 4.0.2

Questa me l’ero proprio persa... Un paio di mesi fa è stato rilasciato l’aggiornamento 4.0.2 del .NET Framework. Si tratta di un update per Visual Studio 2010 SP1 che aggiunge il supporto alle funzionalità AlwaysOn e LocalDB introdotte con SQL Server “Denali”. Esso, inoltre, comprende anche tutte le novità introdotte con la versione 4.0.1, rilasciata lo scorso aprile (StateMachine per Windows Workflow Foundation, comprendente l’aggiunta di un designer, supporto a SqlWorkflowInstanceStore  per SQL Azure, Compensation Extension per WF4) . Da notare che la nuova versione del Framework verrà aggiunta a quelle disponibili nella lista Target framework di Visual Studio. Sarà possibile...

posted @ Friday, December 23, 2011 1:30 AM | Feedback (0) | Filed Under [ C# VB .NET Updates & Service Pack SQL Server .NET 4.0 Visual Studio 2010 ]

[.NET Gadgeteer] L’avventura continua

Certo che la vita è strana… Se un paio di mesi fa qualcuno mi avesse chiesto se avrei mai sperimentato le potenzialità del .NET Micro Framework, gli avrei subito risposto che non sarebbe mai successo… E invece oggi eccomi qua, lanciato più che mai in questo fantastico mondo! Qualche tempo fa mi è stato chiesto di entrare a far parte della neonata community www.tinyclr.it. Inutile dire che sono molto felice di poter contribuire, nel mio piccolo, a questa community, di cui fanno parte molte persone che stimo. Poco fa ho pubblicato il mio primo articolo, dedicato all’Introduzione a .NET...

posted @ Sunday, December 18, 2011 6:40 PM | Feedback (3) | Filed Under [ .NET Micro Framework ]

[.NET Gadgeteer] Nuovi articoli su .NET Gadgeteer

I miei esperimenti (e il mio divertimento) con la piattaforma .NET Gadgeteer continuano senza sosta. Ecco i miei nuovi articoli: Cercare file su una memory card SD File di configurazione XML per applicazioni .NET Micro Framework Oltre a questi, segnalo le traduzioni di alcuni articoli di Michael Dodaro: Il designer di .NET Gadgeteer Soluzione temporanea per il corretto funzionamento del modulo Ethernet_J11D Soluzione temporanea per l’errore su KeyboardConnected con il modulo USBHost … E nuovi articoli sono in fase di elaborazione! Tag di Technorati: .NET,Programming,.NET Micro Framework

posted @ Friday, December 16, 2011 10:12 AM | Feedback (1) | Filed Under [ .NET Micro Framework ]

[.NET Gadgeteer] Coding Day e .NET Gadgeteer

Prendendo spunto da una problematica nata durante il Coding Day di DotNetToscana, ho scritto una classe per gestire un socket TCP multithread con .NET Gadgeteer. Il suo funzionamento è descritto nel post Un Server TCP con .NET Gadgeteer, che il grande Micheal Dodaro ha prontamente tradotto anche in inglese. Ed ho già in cantiere un nuovo articolo, anch'esso legato a quello che abbiamo sviluppato durante il Coding Day… Stay tuned! Tag di Technorati: Community,.NET,Programming,.NET Micro Framework

posted @ Tuesday, December 6, 2011 9:39 AM | Feedback (0) | Filed Under [ .NET Micro Framework Community ]

[.NET Gadgeteer] Creazione ed uso di un Web Service REST con .NET Gadgeteer

Ho da poco completato la traduzione in italiano di un post di Micheal Dodaro dedicato alla creazione e all'uso di un Web Service REST con .NET Gadgeteer: Web Service REST per registrare dati da un sensore .NET Gadgeteer. Si tratta di un articolo molto interessante, che spiega passo-passo la realizzazione del sistema. Assolutamente consigliato! Tag di Technorati: .NET,Programming,.NET Micro Framework

posted @ Friday, December 2, 2011 10:14 AM | Feedback (0) | Filed Under [ .NET Micro Framework ]

[.NET Gadgeteer] I miei post su Maker Geek Roundup

Con sommo piacere, Micheal mi ha fatto sapere che i nostri post dedicati a .NET Gadgeteer sono stati segnalati sul blog di Pete Brown, Maker Geek Roundup. Pete è lead del Developer Guidance Community Team di Microsoft, quindi vedere citati i miei post sul suo blog mi riempi di gioia… Evviva .NET Gadgeteer! Tag di Technorati: .NET,Programming,.NET Micro Framework

posted @ Wednesday, November 30, 2011 10:01 AM | Feedback (3) | Filed Under [ .NET Micro Framework ]

[.NET Gadgeteer] Inaugurato il nuovo sito ufficiale

Da qualche giorno è stato inaugurato il nuovo sito ufficiale del progetto .NET Gadgeteer, un ottimo punto di partenza per conoscere la piattaforma, dare un'occhiata ai progetti basati su di essa, trovare news sempre aggiornate. Naturalmente, c'è anche un forum per condividere le proprie esperienze e trovare risposte ai problemi sull'utilizzo di questo fantastico strumento. Tag di Technorati: .NET,Programming,.NET Micro Framework

posted @ Tuesday, November 29, 2011 11:09 AM | Feedback (2) | Filed Under [ .NET Micro Framework ]

[.NET Gadgeteer] Nuovi articoli

Continua la mia collaborazione con Michael Dodaro. Ecco i nuovi posti dedicati a .NET Gadgeteer: Sincronizzare l’orologio con un server di riferimento su Internet Una ProgressBar per .NET Gadgeteer Michael, oltre a concedermi spazio sul suo blog, si occupa anche di tradurre i miei post in inglese, in modo da dare loro una maggiore visibilità. Per ricambiare il favore, io ho iniziato a fare la stessa cosa con i suoi. Per il momento ho tradotto il suo articolo sull’utilizzo di Camera, Display e salvataggio su scheda SD, ma ne...

posted @ Thursday, November 24, 2011 9:20 PM | Feedback (0) | Filed Under [ .NET Micro Framework ]

Interfaccia ICommand con Mango

Oggi pomeriggio un collega mi ha chiesto come utilizzare l’interfaccia ICommand in Windows Phone Mango. Gli ho così girato il link ad un post che avevo trovato tempo fa e che spiega in maniera molto semplice di cosa si tratta e come si usa. E’ propria la base, ma direi che rappresenta un buon punto di partenza per chi, come quel mio collega, aveva bisogna di farsi un’idea  su tale interfaccia e sul suo utilizzo. Tag di Technorati: .NET,Programming,WPF

posted @ Tuesday, November 22, 2011 11:26 PM | Feedback (1) | Filed Under [ Windows Mobile .NET 4.0 WPF ]

ObservableDictionary per WPF

Sul blog Shimmy on .NET è disponibile l’implementazione di un ObservableDictionary per WPF. Tag di Technorati: .NET,Programming,C#,WPF

posted @ Monday, November 21, 2011 7:14 PM | Feedback (4) | Filed Under [ C# WPF ]

I miei post su Integral Design

Qualche giorno fa ho segnalato un interessante blog dedicato a .NET Gadgeteer. L’autore, Michael Dodaro di Microsoft Research, mi ha contatto per ringraziarmi; ne è nato un interessante scambio di mail, culminato nella proposta di collaborare con lui scrivendo articoli dedicati a .NET Gadgeteer sul suo blog. Ed è così che ho iniziato questa nuova avventura, che ad oggi ha portato alla scrittura di tre post: Extension Methods con .NET Micro Framework Realizzare interfacce per .NET Gadgeteer Interfacce Windows-like con .NET Gadgeteer E altri post...

posted @ Friday, November 18, 2011 11:08 PM | Feedback (0) | Filed Under [ .NET Micro Framework ]

[.NET Gadgeteer] Creare font per le proprie applicazioni

Per utilizzare un font in un’applicazione .NET Micro Framework, è necessario creare un apposito file di definizione in formato TinyFNT. Ogni applicazione Gadgeteer realizzata con il template di Visual Studio 2010 include due font predefiniti, Small e NinaB. E’ però possibile creare nuovi TinyFNT font a partire dai normali font True Type di Windows. Su MSDN è disponibile un’apposita sezione che spiega come utilizzare il tool TFConvert.exe per questo scopo. Tag di Technorati: .NET,Programming,.NET Micro Framework,Tools,Gadgeteer

posted @ Sunday, November 13, 2011 3:02 PM | Feedback (1) | Filed Under [ .NET Micro Framework ]

[.NET Gadgeteer] Creare interfacce grafiche

L’oggetto Display del .NET Gadgeteer SDK è un display touch screen incredibilmente facile da utilizzare. Infatti, oltre alle classiche funzioni “primitive” per disegnare immagini, forme geometriche e testo, espone un oggetto, chiamato WPFWindow, grazie al quale è possibile creare oggetti con una filosofia simile a quella che si avrebbe con WPF (ovvero utilizzando contenitori e controlli). Ovviamente, il numero di oggetti disponibili è limitato, ma sono presenti classi come Canvas, Text, Image e ListBox, che possono essere utilizzate per creare oggetti più complessi. Il seguente esempio è tratto dal forum di TinyCLR: ...

posted @ Friday, November 11, 2011 9:16 PM | Feedback (3) | Filed Under [ C# .NET Micro Framework ]

[.NET Gadgeteer] Un blog molto interessante

Ho appena trovato una risorsa molto interessante per approfondire lo studio del .NET Gadgeteer: Integral Design, un blog, gestito da Michael Dodaro, la cui sezione Embedded Microcontrollers contiene diversi esempi di programmazione della scheda. Inoltre, c’è anche un articolo che spiega come creare un modulo software per gestire un Light Sensor di terze parti che può essere collegato alla board attraverso l’Extender Module di GHI Electronics. Tag di Technorati: .NET,Programming,.NET Micro Framework,C#

posted @ Wednesday, November 9, 2011 1:14 AM | Feedback (5) | Filed Under [ C# .NET Micro Framework CodePlex ]

[70-515] Errore grosso come una casa

Come ben sa chiunque abbia letto anche solo uno dei libri di certificazione Microsoft, i testi sono pieni di errori… Alcuni sono sviste, mentre altri sono molto gravi, come quello che ho appena riscontrato nel capitolo dedicato alla creazione di Custom Web Control. In esso, si parla dei metodi RenderBegin e RenderEndTag, per creare il codice HTML corrispondente rispettivamente al tag di apertura e a quello di chiusura del controllo. Nel libro si legge che: Note that the RenderEndTag is not required, because it is automatically called and will render an end tag based on...

posted @ Sunday, November 6, 2011 1:47 PM | Feedback (0) | Filed Under [ C# VB .NET ASP .NET ]

[.NET Gadgeteer] Problemi noti (di gioventù)

Come accennato nel mio precedente post, la piattaforma .NET Gadgteer è ancora giovane, quindi soffre di alcuni piccoli problemi, i cosiddetti Kwnon Issues. Sul forum del team di sviluppo è stato pubblicato un apposito topic che descrive tali problemi, con la descrizione delle relative soluzioni. In particolare, c’è un problema con la classe dell’SDK che gestisce il Button Module, per cui l’evento ButtonPressed non viene generato (oppure viene generato solo alcune volte). E’ stato però rilasciato un aggiornamento ufficiale, che sostituisce gli assembly che si occupano di gestire il bottone, e che sistema perfettamente la situazione (l’ho verificato in...

posted @ Saturday, November 5, 2011 7:35 PM | Feedback (0) | Filed Under [ .NET Micro Framework ]

.NET Gadgeteer… Mi piace!

Qualche giorno avevo parlato di .NET Gadgeteer e della mia intenzione di ordinare il FEZ Spider Starter Kit prodotto da GHI Electronics Ebbene… Ho fatto l’ordine e da circa una settimana mi sto dilettando con questo nuovo giocattolino! E’ impressionante la facilità con cui questa piattaforma permette di sviluppare applicazioni per dispositivi embedded. Tanto per dirne una, in circa un quarto d’ora ho installato sulla scheda un web server attraverso cui è possibile impostare il colore di un led attraverso chiamate REST-like con un comune browser Web e una risorsa che restituisce una pagina HTML con l’elenco di tutti...

posted @ Friday, November 4, 2011 9:41 PM | Feedback (2) | Filed Under [ .NET Micro Framework ]

.NET Gadgeteer, I'm lovin' it

Microsoft .NET Gadgeteer is an open-source toolkit for building small electronic devices using the .NET Micro Framework and Visual Studio/Visual C# Express. Sviluppato da Microsoft Research, .NET Gadgeteer è una piattaforma open source, il cui codice sorgente, disponibile su CodePlex, è regolato dalla licenza Apache 2, mentre le specifiche tecniche e il design rispondono alla Creative Commons. Il toolkit permette agli utenti di realizzare piccoli dispositivi elettronici e prototipi usando hardware modulare, scrivendo codice con il .NET Framework e Visual Studio/Visual C# Express. GHI Electronics mette a disposizione il FEZ Spider Starter...

posted @ Monday, October 24, 2011 11:52 AM | Feedback (9) | Filed Under [ C# .NET Micro Framework ]

Riflessioni sul 3° Workshop di DotNetLiguria

Venerdì scorso ho partecipato al 3° Workshop di DotNetLiguria, che prevedeva uno speciale sulla //build/ conference e una sessione dedicata agli IoC Container. La prima parte è stata dominata dal grande Raf, che mi ha letteralmente illuminato su Windows 8, con una bellissima sessione sulle novità dello sviluppo con WinRT. Inutile dire che ha fugato ogni mio dubbio e perplessità sull'argomento, e come sempre si è dimostrato disponibilissimo a rispondere alle mie domande. Il risultato è stato che mi ha messo addosso una voglia esagerata di programmare applicazioni Metro-style… Spettacolare! Faccio i miei complimenti anche ad Alessandro Gambaro, che...

posted @ Monday, October 3, 2011 9:55 AM | Feedback (9) | Filed Under [ Community ]

[70-511] Una piccola nota sul Drag and Drop del contenuto di TextBox in WPF

Il Self-Paced Training Kit per l’esame 70-511, Windows Applications Development with Microsoft .NET Framework 4, dedica una lezione al Drag and Drop, sia nelle applicazioni Windows Forms, sia in WPF. In entrambi i casi, si prende come esempio il Drag and Drop tra due controlli TextBox: nessun problema per le Windows Forms, dove tutto funziona come previsto; qualche inghippo, invece, si ha con WPF… In pratica, tutto il codice illustrato non funziona, perché WPF gestisce automaticamente il drag and drop tra due caselle di testo! Così, ad esempio, se proviamo a richiamare il metodo DragDrop.DoDragDrop nell’evento TextBox.PreviewMouseLeftButtonDown, il testo contenuto...

posted @ Thursday, June 9, 2011 11:08 PM | Feedback (5) | Filed Under [ C# VB .NET Certificazioni .NET 4.0 Visual Studio 2010 WPF ]

Upload di file con AsyncFileUpload

Questa mattinami sono imbattuto in un comportamento alquanto strano tentando di salvare sul server un file caricato con l'oggetto AsyncFileUpload dell'AJAX Control Toolkit. Innanzi tutto, ho configurato la dimensione massima per i file impostando l'elemento httpRuntime nel file web.config: <httpRuntime maxRequestLength="102400" /> In questo modo, il caricamento di file sul PC di sviluppo funzionava correttamente. Tuttavia, una volta installato il sito in produzione, tentando di caricare file più grossi di 400 KB ottenevo il messaggio di errore: "Impossibile accedere ad un file chiuso". Facendo qualche ricerca su Internet, ho scoperto che il problema era dovuto alla mancanza dell'attributo requestLengthDiskThreshold sull'elemento...

posted @ Friday, June 3, 2011 10:42 AM | Feedback (1) | Filed Under [ ASP .NET AJAX ]

Extension methods per caricare le risorse in un progetto WPF

Ecco una serie di extension methods per la classe Application di WPF con cui è possibile caricare risorse contenute all'interno del progetto o in un assembly separato: 1: public static class Shell 2: { 3: public static BitmapImage GetImage(this Application application, string file) 4: { 5: var...

posted @ Friday, April 22, 2011 10:07 AM | Feedback (13) | Filed Under [ C# Visual Studio 2010 WPF ]

[70-511] Inizializzazione di oggetti BitmapImage via codice

Questa sera ho provato a configurare un oggetto BitmapImage utilizzando uno stream letto attraverso la proprietà Application.GetResourceStream. Tutto mi sembrava corretto, ma nessuna immagine veniva visualizzata. Naturalmente MSDN mi ha aiutato a svelare l’arcano: Property initialization must be done between BeginInit and EndInit calls. Once the BitmapImage has been initialized, property changes are ignored. In pratica, l’inizializzione del controllo BitmapImage deve essere racchiusa all’interno di un blocco BeginInit e EndInit. E’ bello essere tornati a studiare! Tag di Technorati: WPF,Visual Studio 2010,Programming,XAML

posted @ Tuesday, April 19, 2011 10:25 PM | Feedback (8) | Filed Under [ Visual Studio 2010 WPF ]

Community Tour con DotNetToscana

Il 13 Dicembre prossimo, a Firenze, si svolgerà la tappa toscana del Community Tour di Microsoft dedicato a Visual Studio 2010, le novità del Web e Windows Phone 7.  Noi di DotNetToscana vi prenderemo parte con due sessioni, una dedicata a Silverlight e l’altra al nuovo ASP .NET MVC 3, il tutto preceduto da un’interessante introduzione a Windows Phone 7 e allo sviluppo su questa nuova piattaforma. Sul nostro sito è disponibile l’agenda dell’evento, in cui troverete anche il link per la registrazione. Speriamo di vedervi numerosi! Tag di Technorati: Visual Studio,Programming,ASP .NET,Silverlight,C#,Community,Windows Phone

posted @ Monday, October 25, 2010 9:11 PM | Feedback (1) | Filed Under [ ASP .NET Silverlight Visual Studio 2010 ]

Visualizzare Header e Footer di una GridView che non contiene dati

Come tutti sanno, quando un oggetto GridView non contiene dati, viene renderizzato il contenuto delle sue proprietà EmptyDataTemplate e/o EmpyDataText. In questo caso, tuttavia, l’header e il footer della griglia non sono mostrati.  Questa mattina avevo però la necessità di mostrare tali oggetti in ogni caso; dopo una ricerca con il solito Google, sono giunto su questo post, che mostra come creare un controllo GridView con due nuove proprietà,  ShowFooterWhenEmpty e ShowHeaderWhenEmpty, che erano proprio ciò che stavo cercando. Tag di Technorati: Visual Studio,.NET,Programming,C#,ASP .NET

posted @ Thursday, October 14, 2010 1:24 PM | Feedback (8) | Filed Under [ C# ASP .NET ]

Problemi con validazione lato client su Firefox

Questa mattina, testando un sito realizzato in ASP .NET 2.0, ho notato che la validazione lato client non funzionava correttamente su Firefox, mentre si comportava nel modo atteso con Internet Explorer. Dopo aver eseguito il debug degli script di validazione “in parallelo” sui due browser, ho notato che una certa proprietà (per i più curiosi, val.evaluationfunction) restituiva valori diversi su Explorer e Firefox: era a causa sua che la validazione su FF non veniva eseguita. Dopo alcune indagini, ho scoperto che la causa del problema era il tag xhtmlConformance presente nel web.config: <xhtmlConformance mode="Legacy"/> Con questa impostazione, in pratica, la...

posted @ Wednesday, October 13, 2010 1:32 PM | Feedback (5) | Filed Under [ ASP .NET ]

Analogo di HttpContext per il mondo WCF

Chiunque programmi in ASP .NET conosce bene l’oggetto HttpContext, che consente di recuperare informazioni sul contesto HTTP della richiesta corrente; in particolare, la sua proprietà statica Current permette di ottenere, da qualunque punto del codice, il contesto corrente. Un suo tipico utilizzo consiste nell’inserire, all’interno della collezione Items, tutti gli oggetti che devono vivere per tutta la durata della richiesta HTTP. WCF non offre “direttamente” un oggetto di questo tipo. Esso, però, mette a disposizione la proprietà OperationContext.Current.Extensions, grazie a cui possiamo aggiungere vere e proprie “estensioni” da associare al contesto della richiesta. In questo modo, possiamo facilmente creare...

posted @ Monday, July 26, 2010 12:10 PM | Feedback (8) | Filed Under [ C# VB .NET ASP .NET ]

NullReferenceException invocando un metodo WCF con parametro un oggetto che contiene una proprietà List<T>

Perdonate la lunghezza del titolo, ma non sapevo come riassumere la situazione… In pratica, la situazione è questa: ho un metodo (chiamiamolo A) che restituisce una classe al cui interno è contenuta una proprietà di tipo List<T>; ho poi un altro metodo (B) che prende in ingresso un oggetto dello stesso tipo (per effettuare degli aggiornamenti, ma questa è un’altra storia). Il metodo A funziona senza problemi; al contrario, invocando il metodo B, ancor prima di entrare nel codice del servizio WCF, si ottiene una eccezione di tipo NullReferenceException. L’origine del problema è semplice: la proprietà di tipo List<T>...

posted @ Monday, June 21, 2010 11:20 PM | Feedback (5) | Filed Under [ C# VB .NET Orcas & .NET 3.5 ]

CSS Browser Selector

Purtroppo tutti sappiamo che, spesso, i CSS validi per un browser non lo sono per un altro, con il risultato che dobbiamo adottare soluzioni più o meno fantasiose per creare siti che si vedano correttamente sulle diverse piattaforme. Proprio oggi ho dovuto affrontare nuovamente questo problema e, dopo aver girato un po’ su Internet alla ricerca di una soluzione “elegante”, sono incappato nel progetto CSS Browser Selector: si tratta di una piccola funzione Javascript che, una volta aggiunta al proprio sito, consente di creare CSS condizionali utilizzando una sintassi molto semplice. Ad esempio: <style type="text/css"> .example { width: 100px; ...

posted @ Tuesday, June 15, 2010 3:58 PM | Feedback (0) | Filed Under [ ASP .NET ]

Recensione di Crypto Obfuscator

Nella nuova sezione Recensioni di DotNetToscana è disponibile un articolo relativo a Crypto Obfuscator for .Net 2010, un programma per la protezione del codice sorgente .NET tramite “offuscamento”. Lo potete leggere sia in italiano sia in inglese. Technorati Tag: .NET,Programming,Visual Studio,Tools

posted @ Friday, March 26, 2010 1:46 PM | Feedback (7) | Filed Under [ C# VB .NET ASP .NET Orcas & .NET 3.5 Silverlight Programmi Visual Studio 2010 ]

Il 23 Marzo si parla del Mix

Martedì 23 Marzo, dalle 15 alle 16, Microsoft Italia terrà una sessione di chat dedicata alla novità del Mix 2010 (Silverlight 4 RC, Windows Phone 7 Series, IE9 e HTML 5, jQuery, OData). Per partecipare, è sufficiente collegarsi a questo link il giorno dell’evento. Technorati Tag: Microsoft,Visual Studio,Programming,ASP .NET,Silverlight,Programs

posted @ Thursday, March 18, 2010 9:56 AM | Feedback (3) | Filed Under [ ASP .NET Windows Related Silverlight Programmi ]

Recuperare l’icona associata ad un file eseguibile

Il .NET Framework fornisce un semplicissimo metodo per recuperare l’icona associata ad un file eseguibile, System.Drawing.Icon.ExtractAssociatedIcon. E’ possibile utilizzarlo, ad esempio, per impostare automaticamente l’icona della form principale della nostra applicazione sull’immagine specificata nelle proprietà del progetto: Me.Icon = Drawing.Icon.ExtractAssociatedIcon(Application.ExecutablePath) Semplice e veloce :-) Technorati Tag: .NET,Programming,Visual Studio,C#,VB .NET

posted @ Thursday, February 4, 2010 11:53 AM | Feedback (5) | Filed Under [ C# VB .NET ]

Inserire codice XML nella documentazione XML di Visual Studio

Il titolo forse sembra un gioco di parole… In pratica, il problema è inserire una sezione di codice XML all’interno dei commenti di documentazione delle classi di .NET, che anch’essa è scritta in XML. In questo caso, il tag da utilizzare è <code lang="xml"> Tuttavia, se al suo interno si scrive direttamente il codice XML, una volta generata la documentazione, ad esempio con Sandcastle Help File Builder, il frammento di XML apparirà senza indentazione e “schiacciato” su una sola riga. Per mantenere la formattazione originale, è necessario racchiudere l’XML che si vuole mostrare in un tag di...

posted @ Friday, January 15, 2010 10:12 AM | Feedback (0) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 Orcas & .NET 3.5 .NET 4.0 Visual Studio 2010 AJAX ]

Gestione dei pulsanti Avanti e Indietro del browser con AJAX

Uno dei problemi che si hanno con AJAX riguarda la gestione dei pulsanti Avanti e Indietro del browser. Se, ad esempio, si inserisce un controllo Wizard all’interno di un UpdatePanel, è possibile spostarsi tra i passaggi della procedura senza effettuare postback sincroni della pagina. Tuttavia, la pressione del pulsante Indietro nel browser non causa il ritorno allo step precedente, bensì il caricamento della pagina mostrata prima di quella contenente il Wizard: in altre parole, le interazioni basate su AJAX non determinano l’aggiornamento della cronologia del browser. L’oggetto ScriptManager della versione 3.5 SP1 del .NET Framework introduce proprio il supporto...

posted @ Friday, November 27, 2009 10:03 PM | Feedback (9) | Filed Under [ C# ASP .NET Orcas & .NET 3.5 AJAX ]

Krypton Toolkit 4.1

Il Krypton Toolkit è più che mai un progetto attivo: la nuova versione 4.1, rilasciata da poco, fornisce il supporto alle palette e agli stili del Ribbon di Office 2010.  Il download è disponibile qui. Technorati Tag: .NET,Programming,Tools,C#,VB .NET

posted @ Thursday, November 19, 2009 5:29 PM | Feedback (3) | Filed Under [ C# VB .NET .NET 3.0 Orcas & .NET 3.5 .NET 4.0 ]

Articolo su FILESTREAM in SQL Server 2008

Nella sezione Database di HTML.it è stato pubblicato un mio articolo sull'utilizzo del FILESTREAM in SQL Server 2008. Personalmente, è una feature che ritengo molto interessante: l'idea di poter salvare i dati binari su disco, potendovi però accedere se fossero memorizzati in un database, mantenendo la consistenza transazionale delle informazioni, dovrebbe semplificare la gestione delle informazioni; inoltre, l'utilizzo del FILESTREAM garantisce prestazioni di accesso ai dati binari molto superiori rispetto a quelle ottenibili utilizzando campi di tipo VARBINARY(MAX). Nell'articolo, inoltre, mostro anche un semplice esempio di utilizzo del FILESTREAM da un'applicazione C#. Technorati Tag: .NET,Programming,SQL Server,C#

posted @ Wednesday, November 18, 2009 9:33 AM | Feedback (0) | Filed Under [ SQL Server ]

Sviluppare applicazioni per Linux con Visual Studio

La notizia è senz'altro interessante: Novell ha rilasciato un plug- in per Visual Studio con cui è possibile realizzare applicazioni per Linux lavorando però in ambiente Windows. Purtroppo, si tratta di un add-in a pagamento. Rimando alla fonte per maggiori dettagli. Technorati Tag: Visual Studio,.NET,Programming,Windows

posted @ Wednesday, November 11, 2009 2:38 PM | Feedback (1) | Filed Under [ C# VB .NET ADO .NET & SQL ASP .NET .NET 3.0 Orcas & .NET 3.5 .NET 4.0 Visual Studio 2010 ]

Le diverse versioni di Visual Studio 2010

Visual Studio 2010, da poco rilasciato in versione beta 2, è disponibile in tre versioni differenti: Ultimate, la suite completa di strumenti per la gestione dell'intero ciclo di vita dell'applicazione, dalla progettazione alla distribuzione; Premium, un set di strumenti per lo sviluppo di applicazioni scalabili e di alta qualità; Professional, lo strumento di base essenziale per gli sviluppatori. Novità molto interessante, Team Foundation Server sarà incluso in tutte le versioni di Visual Studio 2010. Fonte: ASPItalia Technorati Tag: .NET,Programming,Visua Studio,Team Foundation Server

posted @ Saturday, October 24, 2009 8:58 PM | Feedback (0) | Filed Under [ Team Foundation Server .NET 4.0 Visual Studio 2010 ]

Microsoft Community Tour in Toscana

Il 9 Dicembre si svolgerà la tappa toscana del Microsoft Community Tour 2009. Nel corso dell'evento parleremo di .NET RIA Services, Silverlight, Internet Explorer 8 e ASP .NET MVC. Potete trovare l'agenda completa sul nostro sito, nella sezione Eventi. La registrazione sarà disponibile a partire da Mercoledì 28 Ottobre. Vi aspetto numerosi Technorati Tag: .NET,Programming,C#,VB .NET,AJAX,Programs,Microsoft,Community,Silverlight,ASP .NET

posted @ Tuesday, October 20, 2009 10:07 AM | Feedback (2) | Filed Under [ C# VB .NET ASP .NET Orcas & .NET 3.5 Silverlight Programmi AJAX ]

MemoryMappedFile in .NET 4.0

Su MSDN Magazine di Settembre 2009 è stato pubblicato un articolo in cui si parla di alcune delle nuove classi disponibili nella versione 4.0 del .NET Framework. Tra le altre, mi sembra molto interessante la classe MemoryMappedFile. Come il nome lascia intuire, si tratta di un oggetto mediante il quale è possibile gestire file mappati in memoria, con la possibilità di condividerli tra due o più processi. Sarà possibile, ad esempio, avere qualcosa di questo tipo: 1: using (varmmf = MemoryMappedFile.CreateNew("mymappedfile", 1000)) ...

posted @ Monday, October 19, 2009 12:33 PM | Feedback (0) | Filed Under [ C# .NET 4.0 ]

I Gladiatori di DotNetRomaCestà

La giovane community DotNetRomaCestà organizza, per il 21 ottobre prossimo, un evento gratuito intitolato Gladiatori Fest, in cui si parlerà di Visual Studio 2010 e del Framework 4.0, passando per MVC e SQL Server 2008. Per maggiori informazioni è possibile fare riferimento alla pagina dell’evento. Non potendo essere presente, faccio a tutti un grande in bocca al lupo! Technorati Tag: Community,Visual Studio,.NET,Programming,SQL Server,ASP .NET,MVC

posted @ Tuesday, October 6, 2009 1:53 PM | Feedback (1) | Filed Under [ SQL Server .NET 4.0 Visual Studio 2010 ]

Nuova sezione Tips & Tricks su DotNetToscana

La nostra Community cresce… Da pochi minuti il sito DotNetToscana si è arricchito di una nuova sezione, Tips & Tricks, in cui raccoglieremo trucchi e suggerimenti per risolvere i tipici problemi che si devono affrontare nel mondo della programmazione .NET. Technorati Tag: .NET,Programming,Visual Studio,C#,Visual Basic .NET,ASP .NET,LINQ,AJAX,Silverlight

posted @ Monday, September 21, 2009 12:06 AM | Feedback (1) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 .NET Micro Framework Orcas & .NET 3.5 Silverlight SQL Server LINQ .NET 4.0 Visual Studio 2010 AJAX Dynamic Data ]

Recuperare il numero totale di nodi una TreeView

La proprietà TreeView.Nodes.Count restituisce il numero di nodi di una TreeView, ma conta solo i "discendenti diretti". Per recuperare il numero totale di nodi, indipendentemente dalla loro profondità, è necessaria una funzione ricorsiva: Public Function GetTotalNodes(ByVal treeView As TreeView) As Integer Return Me.GetTotalNodes(treeView.Nodes) End Function Private Function GetTotalNodes(ByVal nodes As TreeNodeCollection) As Integer Dim rootNodes As Integer = nodes.Count For Each node As TreeNode In nodes rootNodes += Me.GetTotalNodes(node.Nodes) Next Return rootNodes End Function Technorati Tag: .NET,Programming,VB .NET

posted @ Thursday, September 3, 2009 9:34 AM | Feedback (0) | Filed Under [ VB .NET ]

.NET Micro Framework 4.0 in beta

The .NET V4.0 Beta is coming to a PC near you. Sign up on Microsoft Connect to get your copy when it becomes available!n Lot’s of great new features and SOURCE CODE in this release! Questo è l'annuncio che si legge sul blog Embedded Musings. Purtroppo non ho mai avuto modo di provare questo framework, ma devo ammettere di essere molto curioso ed interessato alle sue potenzialità. Technorati Tag: .NET,Programming,Updates

posted @ Tuesday, September 1, 2009 3:14 PM | Feedback (0) | Filed Under [ .NET Micro Framework Updates & Service Pack ]

STM.NET

Software Transactional Memory (STM.NET) is a mechanism for efficient isolation of shared state.  The programmer demarcates a region of code as operating within a transaction that is “atomic” and “isolated” from other transacted code running concurrently. Si tratta di un progetto disponibile tra i DevLabs di Microsoft. Il download comprende anche un package per l'integrazione con Visual Studio 2008. Technorati Tag: .NET,Programming,Tools

posted @ Tuesday, September 1, 2009 9:18 AM | Feedback (1) | Filed Under [ C# Orcas & .NET 3.5 ]

BlogEngine .NET

BlogEngine .NET è un motore di blogging realizzato in .NET. L'ultima versione rilasciata, la 1.5, è scaricabile da CodePlex (quindi insieme al codice sorgente, scritto in C#). Avevo seguito un po' la nascita di questo strumento, ma poi lo avevo perso di vista: recentemente ho avuto l'occasione di riprenderlo in mano: supporta tutte le funzionalità tipiche di un blog engine (feed rss, motore di ricerca interno, tags con tag cloud, categorie, blog roll, temi grafici) e può essere configurato per salvare i post all'interno di file XML o in un database (sono supportati SQL Server, MySQL, SQLite e VistaDB). Inoltre,...

posted @ Friday, July 31, 2009 4:20 PM | Feedback (2) | Filed Under [ C# ASP .NET Tutto & Oltre :-) ]

Aggiornamento per il progetto Windows Forms Aero

Windows Forms Aero è un progetto che ho pubblicato su CodePlex ormai più di 2 anni fa. Pochi giorni fa, grazie al contributo di Blake B. Pell, che si è recentemente aggiunto al team degli sviluppatori, è stata rilasciata la versione 1.4.1 della libreria, in cui si segnala la presenza di tre nuovi controlli: VerticalPanel HorizontalPanel LabelDivider Se vi capita di scaricare questa libreria, mi piacerebbe sapere cosa ne pensate. Technorati Tags: .NET, Programming, C#, VB .NET, Visual Studio

posted @ Wednesday, July 29, 2009 7:03 PM | Feedback (0) | Filed Under [ C# VB .NET ]

Accedere ad un repository Subversion da Web

In questi giorni è sorta la necessità di avere un accesso Web al repository Subversion dell'ufficio. Dopo una breve ricerca sulla rete, sono venuto a conoscenza di WebSVN, un'applicazione scritta in PHP per visualizzare il contenuto di uno o più repository nel proprio browser. Per il suo funzionamento, richiede la presenza sul server del client SVN a riga di comando (ho utilizzato Slik Subversion). Nonostante sia in PHP, funziona correttamente anche su IIS, utilizzando il modulo FastCGI. Technorati Tag: Programming,Programs

posted @ Monday, July 27, 2009 12:51 PM | Feedback (0) | Filed Under [ Programmi ]

Il nuovo tipo di dato Tuple in .NET 4.0

La versione 4.0 del .NET Framework includerà un nuovo tipo dato, chiamato Tuple, con cui sarà possibile definire una collezione di elementi, fortemente tipizzata. Su MSDN Magazine di Luglio 2009 è disponibile un articolo che ne illustra il funzionamento: 1: class Program { 2: static void Main(string[] args) { 3: Tuple<string, int> t = new Tuple<string, int>("Hello", 4); ...

posted @ Sunday, July 26, 2009 6:18 PM | Feedback (5) | Filed Under [ C# VB .NET .NET 4.0 ]

Guida introduttiva alla programmazione orientata agli oggetti in C#

Cercando qualche informazione relativamente al caricamento dinamico dei tipi via reflection (soprattutto in merito alle performance), sono capitato sul sito JAL Computing, in cui è disponibile una sezione intitolata A Twisted Look at Object Oriented Programming in C#. Ci ho dato un rapido sguardo: è una guida introduttiva, ma mi sembra ben fatta, sicuramente sufficiente per iniziare a prendere dimestichezza con questi concetti. Un valore aggiunto è la disponibilità di una gran quantità di codice sorgente, spesso anche scaricabile in formato ZIP. Technorati Tag: .NET,Programming,C#

posted @ Wednesday, July 22, 2009 2:32 PM | Feedback (1) | Filed Under [ C# ]

Esportare i test di Visual Studio in formato HTML

Usando il comando Export Test Results di Visual Studio 2008, i risultati dei test vengono salvati in un file con estensione TRX, anche se si tratta di un normale documento XML, che quindi è poco adattato per essere incluso, ad esempio, in un documento ufficiale. Su Codeplex è però disponibile una semplice utility, trx2html, che converte i file TRX in formato HTML, mostrando informazioni sia riassuntive (in modalità grafica) sia dettagliate relative ai risultati dei test. Il tool non è completo (manca il supporto per alcuni tipi di test), ma per i TestMethods funziona correttamente. Technorati Tag: .NET,Programming

posted @ Tuesday, July 21, 2009 11:26 AM | Feedback (0) | Filed Under [ Orcas & .NET 3.5 ]

Internet Explorer 8 su ioProgrammo

Sul numero di Agosto di ioProgrammo è stato pubblicato un mio articolo sulle novità di Internet Explorer 8 per gli sviluppatori, in cui parlo di AJAX Navigation, Web Slice, DOM Storage, la nuova Developer Toolbar, ecc. Personalmente, le novità che più mi piacciono sono AJAX Navigation, di cui mostro un possibile utilizzo in ASP .NET, e il DOM Storage, introdotto per superare il limite di 4 KB per la dimensione dei cookie. Technorati Tag: .NET,Programming,ASP .NET,Web,Programs

posted @ Monday, July 20, 2009 9:49 AM | Feedback (0) | Filed Under [ C# ASP .NET Programmi ]

web.config, mailSettings e SSL

Questa sera stavo modificando le impostazioni della sezione mailSettings nel file web.config di una Web Application. Volevo configurarla per utilizzare il server SMTP di Gmail per l'invio di mail tramite l'oggetto SmtpClient. Come credo sappiano tutti, Gmail richiede l'utilizzo di SSL per l'invio della posta. Il problema è che la sezione mailSettings del file web.config non permette di indicare questo tipo di connessione. Da una rapida ricerca su Internet, sembra che diverse persone abbiano segnalato questa mancanza. Personalmente, ho risolto aggiungendo una proprietà EnableSsl nella sezione appSettings, che poi utilizzo in questo modo: SmtpClient client...

posted @ Thursday, July 16, 2009 10:01 PM | Feedback (0) | Filed Under [ C# ASP .NET ]

Ritorno alle origini

Visual Basic 6 è duro a morire… In questi giorni ho dovuto esporre come oggetto COM una libreria che ho realizzato con .NET, perché deve essere richiamata, appunto, da una vecchia applicazione in Visual Basic. E, fatto questo, naturalmente, mi è toccato costruire un piccolo esempio in VB6 per mostrare il suo utilizzo. Per quanto VB sia stato il mio primo "vero" linguaggio di programmazione, erano circa 7 anni che non scrivevo codice in questo ambiente… Da una parte, il ritorno alle origini è stato interessante, dall'altra, mi è capitato diverse volte di fermarmi perché non ricordavo come si...

posted @ Wednesday, July 15, 2009 1:59 PM | Feedback (5) | Filed Under [ VB .NET ]

Filtri sulle pagine Dynamic Data

Per impostazione predefinita, un sito Dynamic Data mostra tutte le informazioni contenute nelle tabelle. Tipicamente, però, si ha la necessità di filtrare i dati sulla base di diverse condizioni (ad esempio, i diritti dell'utente). Questo post del grande Andrea Boschin spiega con semplicità come è possibile ottenere tale risultato. Technorati Tag: .NET,Programming,ASP .NET,Dynamic Data,LINQ,C#

posted @ Tuesday, July 14, 2009 11:21 AM | Feedback (0) | Filed Under [ C# ADO .NET & SQL ASP .NET Orcas & .NET 3.5 LINQ Dynamic Data ]

Modifica di file Excel

Qualche giorno fa ho parlato dell'utilizzo di OleDbConnection per leggere un file Excel come se fosse un database. Trattandosi di un "database", però, è possibile utilizzare la stessa tecnica anche per modificare il contenuto del file, ad esempio andando a scrivere in una determina cella (UPDATE) o aggiungendo una riga in fondo (INSERT INTO). La Knowledge Base di Microsoft contiene un articolo che illustra i principi di funzionamento di questa tecnica; è del 2004, ma gli esempi che fornisce sono validi anche per Visual Studio 2008. Technorati Tags: .NET, Programming, VB .NET, ADO .NET

posted @ Monday, July 13, 2009 9:05 PM | Feedback (0) | Filed Under [ ADO .NET & SQL ]

File Excel e parametri IMEX

In questi giorni sto scrivendo in .NET una libreria che, tra le altre cose, deve leggere le informazioni contenute in un file Excel. Per fare questo, sto utilizzando una OleDbConnection, per aprire il file come se fosse un database, e leggerlo così attraverso un OleDbDataReader. Fino adesso non avevo avuto problemi, ma oggi ho riscontrato uno strano comportamento: andando a leggere righe le cui colonne contengono valori di tipi diversi, il reader restituisce il valore DBNull. Girovagando su Internet, ho scoperto che una possibile soluzione consiste nell'aggiungere il parametro IMEX=1, in modo che tutti i valori del file Excel siano...

posted @ Monday, July 6, 2009 2:59 PM | Feedback (3) | Filed Under [ ADO .NET & SQL Programmi ]

Oracle Data Access Components

Come ormai tutti sappiamo, il provider per Oracle incluso in .NET verrà deprecato con la prossima versione del Framework. Per fortuna, esistono comunque delle alternative gratuite, tra cui una libreria fornita da Oracle stessa, chiamata Oracle Data Access Components (ODAC). E' disponibile a questo indirizzo. Technorati Tags: .NET, Programming, ADO .NET

posted @ Sunday, June 28, 2009 12:17 PM | Feedback (0) | Filed Under [ ADO .NET & SQL .NET 4.0 ]

June 2009 Release di WPF Toolkit

E' stata rilasciata ieri l'edizione di Giugno 2009 del WPF Toolkit, disponibile su CodePlex.  Tra le novità, si segnalano in particolare i tanto richiesti Chart Controls, per inserire con facilità grafici e diagrammi nelle proprie applicazioni. Technorati Tag: .NET,Programming,Tools,C#,VB .NET

posted @ Friday, June 26, 2009 4:41 PM | Feedback (20) | Filed Under [ C# VB .NET Orcas & .NET 3.5 Updates & Service Pack ]

Secondo articolo sugli ASP .NET Dynamic Data

Su ioProgrammo di Luglio 2009 (numero 140) è stata pubblicata la seconda parte del mio articolo sui Dynamic Data: completando quanto iniziato nel mese di Maggio, questa volta parlo della definizione di template e di pagine personalizzate. Technorati Tag: .NET,Programming,Dynamic Data,ASP .NET

posted @ Thursday, June 25, 2009 2:16 PM | Feedback (0) | Filed Under [ ASP .NET Orcas & .NET 3.5 Dynamic Data ]

AnkhSvn con supporto a Subversion 1.6.x

AnkhSvn è un Source Control Provider per Visual Studio 2005/2008/2010 per l'utilizzo di Subversion. L'ultima versione disponibile, la 2.1.6941, aggiunge il supporto a Subversion versione 1.6.x, permettendo quindi di avere un controllo del codice sorgente completamente integrato nell'ambiente di sviluppo (la release precedente di AnkhSvn, la 2.0, poteva essere utilizzata solo con Subversion 1.5.x). Technorati Tag: .NET,Programming,Tools

posted @ Wednesday, June 24, 2009 4:13 PM | Feedback (0) | Filed Under [ C# VB .NET Tutto & Oltre :-) Orcas & .NET 3.5 Visual Studio 2010 ]

Microsoft Cloud Computing Tools

Da qualche tempo è disponibile su MSDN una sezione dedicata a Windows Azure e alla piattaforma per il Cloud Computing di Microsoft: un buon punto di raccolta di tutto il materiale ufficiale attualmente disponibile, per un sistema che mi ispira sempre di più ogni volta che ne sento parlare… Technorati Tag: .NET,Programming,Tools

posted @ Wednesday, June 24, 2009 9:47 AM | Feedback (0) | Filed Under [ C# VB .NET Orcas & .NET 3.5 Visual Studio 2010 ]

Windows API Code Pack for Microsoft .NET Framework

Su MSDN Flash che ho appena ricevuto leggo di un progetto molto interessate, Windows API Code Pack for Microsoft .NET Framework: The Windows® API Code Pack for Microsoft® .NET Framework provides a source code library that can be used to access some new Windows 7 features (and some existing features of older versions of Windows operating system) from managed code. These Windows features are not available to developers today in the .NET Framework. La lista delle funzionalità supportate è molto interessante: Windows 7 Taskbar Jump Lists, Icon Overlay, Progress Bar, Tabbed Thumbnails,...

posted @ Tuesday, June 23, 2009 11:04 AM | Feedback (1) | Filed Under [ C# VB .NET Windows Related ]

Dynamic Data e gestione dell'autenticazione

L'attuale versione dei Dynamic Data non comprende un meccanismo integrato per la gestione dell'autenticazione e dei permessi, che deve quindi essere realizzata alla "vecchia maniera". Il solito blog C# Bits offre un dettagliato tutorial che guida passo-passo nella realizzazione di questo sistema. Guardando un po' più avanti, La versione 2.0, dei Dynami Data, attualmente in fase beta insieme a Visual Studio 2010, conterrà nativamente funzioni il login e la gestione dei ruoli. E' possibile provarne un'anteprima scaricando gli esempi disponibili alla pagina http://www.codeplex.com/aspnet/Release/ProjectReleases.aspx?ReleaseId=14473 (in particolare, il file SecureDynamicData.zip). Technorati Tags: .NET, Programming, ASP .NET, Dynamic Data

posted @ Monday, June 22, 2009 7:10 PM | Feedback (0) | Filed Under [ .NET 4.0 Visual Studio 2010 Dynamic Data ]

Aggiornamento per gli stili utilizzati da Sandcastle

Ultimamente sto utilizzando con una certa frequenza l'accoppiata Sandcastle e Sandcastle Help File Builder per creare la documentazione tecnica delle librerie che sviluppo. Ho così notato che gli stili predefiniti inclusi nella distribuzione di Sandcastle non risultano completi (ad esempio, non contengono tutte le trasformazioni per il tag <note>). Su CodePlex è però disponibile un progetto, Sandcastle Styles, che contiene una serie di fix per gli stili di Sandcastle. L'ultima versione è disponibile qui. Technorati Tags: .NET, Programming, Tools

posted @ Monday, June 22, 2009 1:00 AM | Feedback (0) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 .NET Micro Framework Orcas & .NET 3.5 Programmi .NET 4.0 Visual Studio 2010 ]

Tracing di servizi WCF

Quando si sviluppano o si utilizzano servizi realizzati con Windows Communication Foundation, l'individuazione degli errori può essere problematica, poiché, spesso, se qualcosa non funziona si ottiene semplicemente una eccezione di tipo CommunicationObjectFaultedException, la cui descrizione contiene Il generico messaggio The communication object, System.ServiceModel.Channels.ServiceChannel, cannot be used for communication because it is in the Faulted state. In situazioni di questo tipo, è molto utile attivare il tracing del servizio WCF, in modo da ottenere una registrazione completa di tutto quello che succede, con l'indicazione precisa dell'errore che si è verificato. Le impostazioni consigliate per abilitare...

posted @ Sunday, June 21, 2009 11:58 AM | Feedback (0) | Filed Under [ C# VB .NET ASP .NET .NET 3.0 Orcas & .NET 3.5 .NET 4.0 ]

Generare file XML a partire da uno schema XSD

Visual Studio fornisce un metodo molto semplice per "inferire" lo schema XSD di un file XML: basta aggiungere un Item al progetto e selezionare XML To Schema  per avviare un'apposita procedura guidata. In alcuni casi, però, potrebbe essere necessario fare anche il viceversa, ovvero costruire automaticamente un file XML che rispetti i vincoli definiti nel relativo XSD: può essere utile, ad esempio, quando si vogliono creare file XML di prova, conformi ad un certo formato, per eseguire una serie di test. In questo caso non ci sono strumenti già "confezionati". Su MSDN, però, è presente un articolo molto interessante, Generating...

posted @ Thursday, June 18, 2009 12:28 PM | Feedback (1) | Filed Under [ C# VB .NET ]

Xml Documentation for Dummies

Cercando su MSDN, ho notato che le informazioni sulla documentazione XML (tag supportati, significato dei vari parametri, ecc.) sono sparse in varie pagine, ovvero manca un punto centrale che raccolga tutte le risorse. Come sempre, però, Google mi è venuto in aiuto, trovando il documento XML Documentation Comments Guide: si tratta di una guida disponibile in vari formati (tra cui un PDF di circa 70 pagine) che illustra tutti i tag supportati, con chiari esempi di utilizzo. Technorati Tag: .NET,Programming,C#,VB .NET

posted @ Monday, June 15, 2009 3:38 PM | Feedback (2) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 .NET Micro Framework Orcas & .NET 3.5 .NET 4.0 ]

Nuova versione di GhostDoc

Da un paio di settimane è stata rilasciata la nuova versione di GhostDoc, un add-in per Visual Studio in grado di aiutare nella scrittura di commenti XML relativi a metodi, proprietà ed eventi delle nostre classi .NET. Personalmente lo ritengo un tool indispensabile se si utilizza Sandcastle per generare la documentazione delle proprie librerie. Le novità di questa versione comprendono il supporto ufficiale a VB .NET (prima era considerato solo "sperimentale") e la compatibilità con Visual Studio 2010 Beta 1. Technorati Tag: .NET,Programming,Visual Studio,Tools

posted @ Friday, June 12, 2009 2:28 PM | Feedback (0) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 .NET Micro Framework Orcas & .NET 3.5 Programmi .NET 4.0 Visual Studio 2010 ]

Windows Mobile 6.5 Developer Toolkit

E' stato da poco rilasciato il Developer Toolkit per Windows Mobile 6.5. Tra le novità che introduce, una delle più interessanti è l'insieme di API per gestire il nuovo touch gesture framework introdotto da questa versione del sistema operativo. Maggiori informazioni direttamente alla fonte. Technorati Tag: .NET,Programming,Tools,Updates,Visual Studio,Windows Mobile

posted @ Tuesday, June 9, 2009 2:47 PM | Feedback (1) | Filed Under [ Updates & Service Pack Windows Mobile ]

Ordinare le colonne di un sito Dynamic Data

Uno dei limiti più grandi dell'attuale versione dei Dynamic Data è l'impossibilità di stabilire l'ordinamento delle colonne delle tabelle, che sono sempre mostrate così come sono definite nel Data Model. La prossima release dei Dynamic Data colmerà tale lacuna, fornendo un Custom Attribute con cui decidere in quale ordine far apparire le colonne; in attesa del rilascio definitivo, è comunque possibile ottenere lo stesso risultato anche con la versione attuale, creando una serie di classi di supporto. Ho creato su MSDN Code Gallery un progetto che fornisce un'implementazione di tale funzionalità, sperando che possa tornare utile ad altre persone...

posted @ Monday, June 8, 2009 12:23 AM | Feedback (0) | Filed Under [ ASP .NET Orcas & .NET 3.5 LINQ .NET 4.0 Dynamic Data ]

Errori più chiari con LINQ-to-SQL

Questo pomeriggio ho provato a creare un ADO .NET Entity Data Model utilizzando Visual Studio 2008 SP1. Dopo aver selezionato nel wizard le tabelle che mi interessavano, al termine della procedura mi sono trovato il designer inesorabilmente vuoto. La prima cosa a cui ho pensato era che la mia installazione di Visual Studio 2008 avesse "qualche problema", ma, anche provando su un altro PC, il problema era sempre lo stesso. Alla fine, ho voluto provare a creare un Data Model con LINQ: quando ho trascinato una certa tabella nel designer, mi è apparso un messaggio che diceva che uno dei...

posted @ Wednesday, June 3, 2009 5:37 PM | Feedback (5) | Filed Under [ ADO .NET & SQL ]

Internal Coding Guidelines per il codice .NET

Cercando qualche informazione in merito all'utilizzo dei certificati X509 in .NET, sono capitato in questo blog, che contiene una nutrita serie di articoli molto interessanti, relativi alle linee guida per lo scrittura di codice .NET riutilizzabile (ad esempio, non usare la notazione ungherese, utilizzare il camelCase per i nomi di variabili private e parametri, ecc.). Si tratta soprattutto di post che fanno riferimento al libro Framework Design Guidelines. Molto interessante. Technorati Tag: .NET,Programming,ASP .NET,C#,VB .NET

posted @ Wednesday, June 3, 2009 2:15 PM | Feedback (1) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 .NET Micro Framework Orcas & .NET 3.5 LINQ .NET 4.0 ]

"Minificare" i Javascript

Minification (very often just minify, and sometimes also minimisation or minimization), in computer programming languages and especially JavaScript, is the process of removing all unnecessary characters from source code, without changing its functionality. These unnecessary characters usually include white space characters, new line characters, comments and sometimes block delimiters; which are used to add readability to the code, but are not required for it to execute. Questa tecnica è venuta alla ribalta soprattutto con jQuery: praticamente di tutti i plug-in, oltre che di jQuery stesso, sono disponibili le versioni "minificate", che in alcuni casi possono...

posted @ Monday, June 1, 2009 9:57 PM | Feedback (44) | Filed Under [ ASP .NET AJAX ]

Windows User Experience Interaction Guidelines aggiornata

Windows User Experience Interaction Guidelines è la raccolta delle linee guida di Microsoft per lo sviluppo di applicazioni client conformi gli standard grafici di Windows. Recentemente, tale guida è stata aggiornata con le linee guida per Windows 7, quindi ad esempio contiene informazioni per la gestione di applicazioni "touch" e nuove regole per Windows Desktop Gadget. L'indirizzo da cui partire per la consultazione è questo, ma l'intera guida è anche disponibile in un corposo file PDF di 39 MB. Technorati Tag: Windows,Programming

posted @ Wednesday, May 27, 2009 12:01 PM | Feedback (0) | Filed Under [ C# VB .NET Windows Related .NET 4.0 ]

SQL Server 2008 Training Kit

Technorati Tags: SQL Server, NET, Programming A questo indirizzo è possibile scaricare il Training Kit di SQL Server 2008, la cui descrizione recita così: The SQL Server 2008 Developer Training Kit will help you understand how to build web applications which deeply exploit the rich data types, programming models and new development paradigms in SQL Server 2008. Per un corretto utilizzo, è necessario avere a disposizione i seguenti software, non inclusi nel training kit: SQL Server 2008 Express with Advanced Services (o superiore) Microsoft Visual...

posted @ Sunday, May 24, 2009 10:20 PM | Feedback (0) | Filed Under [ ASP .NET SQL Server ]

Visual Studio 2010 Training Kit

MSDN Italia ci informa della disponibilità del Training Kit per la versione Beta 1 di Visual Studio 2010 e del Framework .NET 4.0, contenente materiale relativo a: C# 4.0 Visual Basic 10 F# Parallel Extensions Windows Communication Foundation Windows Workflow Windows Presentation Foundation ASP.NET 4 Entity Framework ADO.NET Data Services Managed Extensibility Framework ...

posted @ Wednesday, May 20, 2009 6:08 PM | Feedback (0) | Filed Under [ C# VB .NET ASP .NET LINQ .NET 4.0 Visual Studio 2010 Dynamic Data ]

Le novità di ASP .NET 4.0

La beta 1 di Visual Studio 2010 è in dirittura d'arrivo… Nel frattempo, a questo indirizzo è disponibile un elenco delle principali novità che saranno introdotte con ASP .NET 4.0 e il nuovo editor Web di Visual Studio. Personalmente, le trovo tutte molto interessanti, non vedo l'ora di poterle provare sul campo. Technorati Tag: .NET,Programming,ASP .NET,Visual Studio

posted @ Friday, May 15, 2009 6:11 PM | Feedback (0) | Filed Under [ ASP .NET Updates & Service Pack ]

Proprietà Page.Header e Web Control

In un Web Control che ho sviluppato ho la necessità di riferire l'header della pagina; allo scopo, ho dapprima provato ad utilizzare la proprietà Page.Header della classe base WebControl. Tuttavia, mentre nella maggior parte dei casi essa funziona correttamente, in determinate situazioni, che non sono riuscito ad isolare, l'oggetto Page del WebControl assume il valore null. Ho fatto qualche ricerca, e alla fine ho trovato un metodo alternativo per avere accesso a questa proprietà, che non mi ha più dato problemi: Page thePage = HttpContext.Current.Handler as Page; Se avrò tempo, proverò a scoprire perché la via "facile"...

posted @ Thursday, May 14, 2009 3:00 PM | Feedback (0) | Filed Under [ ASP .NET ]

ASP .NET Dynamic Data Filtering su HTML.it

Qualche tempo fa avevo parlato degli ASP .NET Dynamic Data Filtering, un pacchetto per aggiungere maschere di ricerca personalizzate in un sito Dynamic Data. Da qualche giorno è stato pubblicato su HTML.it un mio articolo sull'argomento: in esso, spiego passo-passo come utilizzare questa libreria, partendo dalla sua installazione fino alla personalizzazione dei template di ricerca. Technorati Tags: .NET, Programming, Dynamic Data

posted @ Wednesday, May 13, 2009 1:50 PM | Feedback (0) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

Page.ParseControl

Quest'oggi avevo la necessità di caricare in una pagina ASPX una porzione di HTML prelevata da un file esterno. Dapprima ho provato a leggere il file ed inserirne il contenuto in un Literal. Tuttavia, non mi sembrava una soluzione ottimale, né tantomeno versatile. Allora mi sono armato di pazienza ed ho trovato l'ennesima sorpresa di ASP .NET: la classe Page fornisce il metodo ParseControl, che analizza la stringa passata come argomento e ne restituisce il corrispondente oggetto Control. E' quindi possibile scrivere qualcosa del tipo: protected void Page_Load(object sender, EventArgs e){ Control c...

posted @ Monday, May 11, 2009 9:31 PM | Feedback (2) | Filed Under [ ASP .NET ]

Eseguire PostBack asincroni con Javascript

Richiamando la funzione Javascript __doPostBack da una pagina ASP .NET, è possibile eseguire il PostBack sincrono di una pagina via codice. Se, invece, si vuole realizzare un PostBack asincrono, scatenato da un controllo UpdatePanel, è necessario agire sulle proprietà dell'oggetto Sys.WebForms.PageRequestManager, come indicato in questo post. Technorati Tags: .NET, Programming, AJAX

posted @ Monday, May 11, 2009 12:45 AM | Feedback (0) | Filed Under [ ASP .NET ]

Rilasciati i Dynamic Data Preview 4

Una grande notizia per tutti gli ASP .NET Dynamic Data: proprio oggi ne è stata rilasciata la Preview 4, un pacchetto che contiene un'anteprima delle novità che saranno rilasciate, in versione finale, con il .NET Framework 4.0. Una delle innovazioni secondo me più interessanti, come si legge in questo post, è la possibilità di aggiungere funzionalità Dynamic Data ad una qualunque pagina ASP .NET contenente una GridView, semplicemente richiamando il nuovo extension method definito su questo oggetto: GridView1.EnableDynamicData(typeof(Product)); Come sempre, il download è disponibile su CodePlex. Technorati Tags: .NET, Programming, ASP .NET, Dynamic Data

posted @ Thursday, May 7, 2009 2:08 PM | Feedback (0) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

Windows SDK per Windows 7

Ormai sappiamo tutti che questo è un periodo intenso per quanto riguarda i rilasci: dopo Windows 7 RCe Windows Server 2008 RC, segnalo anche la Release Candidate dell’SDK per Windows 7 e .NET Framework 3.5 SP1. Questo aggiornamento è compatibile, oltre ovviamente con Windows 7 e Windows Server 2008 R2, anche con Windows XP e Windows Vista. Maggiori dettagli sono disponibili in questo post, in cui sono forniti anche i link per scaricarlo in formato ISO oppure tramite programma di installazione web. Technorati Tag: .NET,Visual Studio,Windows,Programming,Updates

posted @ Wednesday, May 6, 2009 1:54 PM | Feedback (0) | Filed Under [ Windows Related Orcas & .NET 3.5 Updates & Service Pack ]

Personalizzare la Home Page di un sito Dynamic Data

Personalmente, trovo la Home Page di un sito Dynamic Data piuttosto brutta, dal momento che presenta un anonimo elenco delle tabelle presenti nel Data Model, una sotto l'altra, all'interno di una griglia. Ma basta un po' di inventiva per trasformare la pagina iniziale in qualcosa come questo: Le tabelle sono rappresentate da immagini su cui ho definito un effetto onmouseover, per "riquadrarle" in automatico al passaggio del mouse. E, già che c'ero, ho definito un sistema dinamico per realizzare una soluzione di questo tipo, basata su Costum Attribute e convenzioni sui nomi dei file (un po'...

posted @ Thursday, April 30, 2009 2:35 PM | Feedback (1) | Filed Under [ ASP .NET ]

Personalizzare le pagine dei Dynamic Data

In tutti i post e i tutorial che ho letto a proposito della creazione di pagine personalizzate per i Dynamic Data, viene semplicemente detto che basta creare in DynamicData\CustomPages una cartella con il nome della tabella interessata, quindi copiare al suo interno i file che si trovano nella directory DynamicData\PageTemplates. Questi passaggi sono corretti, ma incompleti: se, infatti, ci si limita ad essi, provando ad eseguire il sito si otterrà una lunga sfilza di errori, perché nell'applicazione sono presenti oggetti con lo stesso nome. Il problema è dovuto al fatto che le pagine copiate hanno lo stesso nome di...

posted @ Wednesday, April 29, 2009 1:32 PM | Feedback (1) | Filed Under [ ASP .NET ]

Ordinare la lista delle tabelle in un sito Dynamic Data

La pagina iniziale di un sito Dynamic Data mostra l'elenco delle tabelle del data model in ordine alfabetico. Se si vuole modificare tale ordinamento, è necessario indicare al sistema l'ordine in cui vogliamo che siano mostrate le informazioni. Per fare questo, innanzi tutto aggiungiamo un nuovo Custom Attribute al nostro progetto: [AttributeUsage(AttributeTargets.Class, AllowMultiple=false)]public class TableOrderAttribute : Attribute{ public int Order { get; private set; } public TableOrderAttribute() { Order = int.MaxValue; } public TableOrderAttribute(int...

posted @ Monday, April 27, 2009 1:05 AM | Feedback (4) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

Problemi con il controllo TreeView

Ho notato un comportamento strano con il controllo TreeView delle Windows Forms di .NET 3.5 SP1. Se, in fase di progettazione, imposto il carattere normale per i nodi, e a tempo di esecuzione aggiungo nuovi TreeNode con il font grassetto, le relative etichette appaiono "tagliate", come se il testo uscisse dal rettangolo che dovrebbe contenerlo. Ho provato a fare qualche ricerca su Internet, ma a quanto pare l'unico modo per risolvere il problema (tralasciando le tecniche di subclassing del controllo) consiste nell'impostare il carattere bold per tutto il TreeView, quindi ridefinire il font dei nodi che devono apparire con testo...

posted @ Friday, April 24, 2009 4:52 PM | Feedback (3) | Filed Under [ C# VB .NET ]

Creare una sezione personalizzata nel file di configurazione dell'applicazione

Oggi avevo la necessità di creare una sezione personalizzata nel file app.config di un'applicazione Windows Forms. Si tratta della classica attività che, sulla carta, conoscevo bene, ma che non avevo mai realizzato in pratica. Per raggiungere il mio obiettivo, mi è stato molto utile questo post, che fornisce un esempio semplice e quindi facilmente comprensibile. Technorati Tag: .NET,Programming,C#

posted @ Thursday, April 23, 2009 6:13 PM | Feedback (1) | Filed Under [ C# ]

In VB .NET c'è TryCast…

Questa mattina stavo cercando, in VB .NET, di convertire un tipo generico in un array di byte, cosa che in C# si fa semplicemente con la parola chiave as. Ho provato dapprima con DirectCast, quindi con CType, ma in entrambi i casi ottenevo un errore in compilazione. Alla fine ho scoperto che l'istruzione da utilizzare si chiama TryCast… Ci saranno sicuramente dei motivi validi per cui VB .NET ha tutti questi operatori diversi, fatto sta che la cosa mi ha fatto perdere del tempo… Technorati Tag: .NET,Programming,VB .NET,C#

posted @ Monday, April 20, 2009 12:17 PM | Feedback (3) | Filed Under [ C# VB .NET ]

Controllo FileUpload e AJAX UpdatePanel

Il controllo FileUpload non è pienamente compatibile con l'UpdatePanel di AJAX: per farlo funzionare, si deve specificare un trigger nell'UpdatePanel in modo da effettuare un PostBack completo della pagina quando si preme il pulsante per effettuare l'upload, altrimenti la proprietà FileUpload.HasFile avrà sempre valore false: <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <asp:FileUpload ID="FileUpload1" runat="server" /> <asp:Button ID="btnUpload" runat="server" Text="Upload..." /></ContentTemplate> <Triggers> ...

posted @ Sunday, April 19, 2009 5:46 PM | Feedback (4) | Filed Under [ ASP .NET ]

Pipeline Builder

Qualche giorno fa ho parlato del supporto agli add-in fornito da .NET 3.5. In tale occasione, avevo accennato ad un tool, chiamato Pipeline Builder, che permette di semplificare le definizione di questa architettura, poiché è in grado di creare automaticamente tutte le class library di supporto. Si tratta di un add-in per Visual Studio 2008. Dopo l'installazione, è necessario registrarlo nel sistema seguendo le istruzioni riportate in questa pagina. Uno degli aspetti più interessanti del Pipeline Builder è che esso permette di definire anche eventi sull'interfaccia dell'add-in, cosa che, come sa chi ha provato il namespace System.AddIn, non è supportata...

posted @ Thursday, April 16, 2009 9:39 AM | Feedback (1) | Filed Under [ C# VB .NET ]

Nuova versione di Flowplayer

Flowplayer è un player Web in grado di riprodurre filmati in formato FLV ed MP4, mostrando a video un oggetto simile a quello utilizzato da YouTube. Dispone di un'interfaccia di programmazione basata su Javascript, che permette di personalizzarlo fin nei minimi dettagli. Lo sto utilizzando con soddisfazione da qualche giorno in un'applicazione ASP .NET. Poche ore fa ne è stata rilasciata la versione 3.1.0, che introduce diverse migliorie e una lunga serie di novità, come riportato in questo post. Technorati Tag: .NET,Programming,ASP .NET

posted @ Wednesday, April 15, 2009 6:24 PM | Feedback (1) | Filed Under [ ASP .NET ]

Krypton Suite 3.5.2

This maintenance release fixes various issues but mainly bugs in the new KryptonDateTimePicker and KryptonMonthCalender controls. Also includes an important fix with the KryptonTextBox that was displaying the password text when in disabled mode. Maggiori informazioni e il link per il download sul sito di Component Factory. Technorati Tag: .NET,Programming,C#,VB .NET,Tools,Updates

posted @ Wednesday, April 15, 2009 9:44 AM | Feedback (2) | Filed Under [ C# VB .NET ]

Eseguire applicazioni ASP .NET senza IIS

Come sappiamo, per la realizzazione di applicazioni ASP .NET non serve avere Internet Information Services, dal momento che Visual Studio integra un Web Server per l'esecuzione di applicazioni Web all'interno dell'ambiente di sviluppo. Allo stesso modo, esiste un piccolo Web Server, Cassini, che è composto da un singolo file di appena 53 KB, non richiede installazione e permette di eseguire applicazioni ASP .NET anche al di fuori di Visual Studio, senza doverle pubblicare su IIS. Può essere scaricato dal blog di Dmitry Robsman, insieme al codice sorgente, rilasciato con licenza Ms-PL. Technorati Tag: .NET,Programming,ASP .NET,Tools

posted @ Thursday, April 9, 2009 10:23 AM | Feedback (2) | Filed Under [ ASP .NET ]

Modificare un Field Template da un altro

Ieri mattina mi è stato chiesto se fosse possibile, in un sito Dynamic Data, cambiare il contenuto di un Field Template in seguito alla modifica di un altro campo mostrato nella stessa pagina (ad esempio, cancellare il contenuto di una TextBox quando si seleziona un nuovo valore in una DropDownList). Questa cosa, teoricamente molto semplice, in realtà non è così banale, per via del modello ad oggetti utilizzato dal Framework dei Dynamic Data, in cui ogni Field Template è un controllo ASCX a parte, quindi isolato dagli altri, e tutti gli oggetti per visualizzare e modificare i dati sono creati...

posted @ Wednesday, April 8, 2009 1:55 AM | Feedback (1) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

Visual Studio 2008, Internet Explorer 8 e il debug degli script

Quando si esegue un sito Web da Visual Studio 2008, se esso viene visualizzato all'interno del browser Internet Explorer 8, il debug degli script viene automaticamente abilitato, quindi non è più necessario intervenire sulle impostazioni di IE per utilizzare tale funzione. Tuttavia, se il sito utilizza un gran numero di script dinamici (come quelli utilizzati da AJAX), si possono notare rallentamenti evidenti durante la fase di debug. Purtroppo, non c'è una soluzione immediata a questo problema, perché attualmente non esiste in Visual Studio un'opzione per eseguire il sito "sganciato" dal debugger di Internet Explorer 8. Si possono comunque provare alcuni...

posted @ Tuesday, April 7, 2009 10:34 AM | Feedback (4) | Filed Under [ ASP .NET ]

Architettura a Plug-in con il .NET Framework 3.5

Recentemente ho iniziato un nuovo progetto il cui nucleo deve essere basato su un'architettura a plug-in. Non avendo vincoli di sorta, ho voluto provare ad utilizzare il namespace System.AddIn aggiunto nel .NET Framework 3.5. Devo ammettere che il primo impatto con queste classi è stato un po' "traumatico": basti pensare che, per realizzare un sistema di plug-in minimale, bisogna realizzare almeno 5 Class Library e salvare i file in ben precise cartelle, altrimenti si otterranno errori in fase di esecuzione. Cercando un po' su Internet, ho trovato un post che spiega passo-passo come costruire questo tipo di architettura. Lo...

posted @ Monday, April 6, 2009 9:38 PM | Feedback (3) | Filed Under [ C# VB .NET Orcas & .NET 3.5 ]

Tutorial per ASP .NET MVC

A questo indirizzo è disponibile per il download gratuito il primo capitolo del libro Professional ASP .NET MVC 1.0 di Wrox Press. Esso fornisce un'introduzione al nuovo Framework mostrando come realizzare pass-passo un'applicazione Web secondo tale pattern. Fonte: Blog di MSDN Italia Technorati Tag: .NET,Programming,ASP .NET

posted @ Friday, April 3, 2009 4:02 PM | Feedback (1) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

Articolo su SQL Server Compact

Anche se con un po' di ritardo, segnalo che nella sezione database di HTML.it è stato pubblicato un mio nuovo articolo, in cui parlo di SQL Server Compact e del suo utilizzo da .NET. Technorati Tag: .NET,Programming,C#,SQL Server

posted @ Friday, April 3, 2009 10:24 AM | Feedback (1) | Filed Under [ C# SQL Server ]

Un nuovo User Group su .NET

DotNetRomaCesta è il neonato User Group di Roma dedicato al mondo .NET. Come si legge nella sua Home Page: Lo scopo di quest'associazione è quella di creare un punto di riferimento per la città di Roma e per tutti gli appassionati ed utilizzatori di questa tecnologia, un modo per confrontarsi e scambiarsi le proprie esperienze. L'User Group nato dalla passione di persone, ha il compito di fornire materiale formativo, quali articoli e trucchi nonché notizie e di promuovere una serie di attività culturali e formativi volte ad accrescere la conoscenza di questa materia. Gli eventi, che...

posted @ Thursday, April 2, 2009 9:43 AM | Feedback (7) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET Tutto & Oltre :-) .NET 3.0 .NET Micro Framework Orcas & .NET 3.5 Silverlight SQL Server LINQ ]

Visual Studio 2008 Remote Debugger

Il Remote Debugger di Visual Studio è uno strumento utilissimo per effettuare il debug di siti web e servizi una volta che sono stati pubblicati.  Esso, però, fa parte di Visual Studio, quindi non è disponibile sui sistemi che montano solo il runtime di .NET. Per eseguire il debug di un’applicazione su una macchina che non è dotata di Visual Studio, è possibile installare su di essa solo gli strumenti necessari alla connessione remota, utilizzando un apposito pacchetto disponibile sul sito Microsoft Downloads. Technorati Tag: .NET,Programming,Tools

posted @ Wednesday, April 1, 2009 2:19 PM | Feedback (1) | Filed Under [ C# ADO .NET & SQL .NET 3.0 Orcas & .NET 3.5 ]

Pubblicate le slide dell'Installation Fest

Su DotNetToscana sono disponibili le slide della mia sessione Windows 7 – Le novità per gli sviluppatori che ho tenuto nel corso dell'Installation Fest di Windows 7 di Mercoledì 25 Marzo. Technorati Tag: .NET,Programming,Community

posted @ Monday, March 30, 2009 9:32 AM | Feedback (2) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET Windows Related .NET 3.0 .NET Micro Framework Orcas & .NET 3.5 ]

I pregi dei file di risorse di ASP .NET

Dovendo realizzare un sito web multilingua, ho utilizzato il meccanismo dei file di risorse di ASP .NET. L'aver seguito questo approccio, mi ha portato un vantaggio molto interessante. Se il cliente mi chiede la modifica di una stringa, ad esempio perché vorrebbe cambiare un certo messaggio o un'etichetta, inserendo un nome diverso, è sufficiente modificare il file RESX corrispondente, senza dover ricompilare l'applicazione: si tratta di un intervento sicuramente veloce, che tra l'altro persino il cliente è in grado di fare, una volta che gli si è spiegata la struttura dei file. Per tale motivo, personalmente sono dell'idea di utilizzare...

posted @ Wednesday, March 25, 2009 12:36 PM | Feedback (1) | Filed Under [ ASP .NET ]

Rilasciato il Krypton Toolkit versione 3.5

E’ stata da poco rilasciata la versione 3.5 del Kryptoon Toolikit, una raccolta di controlli freeware per applicazioni Windows Forms prodotti da Component Factory. Il nuovo aggiornamento porta il numero totale di controlli a 41. Tra le aggiunte, si segnalano: KryptonDateTimePicker KryptonMonthCalendar DateTimePicker for KryptonRibbon MonthCalendar for KryptonContextMenu Per-KryptonPage ButtonSpecs Il pacchetto scaricabile dal sito del produttore comprende l’intera Krypton Suite, che inculde anche la versione trial di una nutrita serie di altri controlli. Technorati Tag: .NET,Programming,C#,VB .NET,Tools

posted @ Tuesday, March 24, 2009 9:53 AM | Feedback (6) | Filed Under [ C# VB .NET .NET 3.0 Orcas & .NET 3.5 ]

Extension methods in VB .NET 2.0

In questigiorni sto lavorando con VB .NET, su un progetto che usa il Framework 2.0 come target, impostazione che non posso cambiare. Volendo usare gli extension methods, che trovo comodissimi, ho provato a tradurre il tip per il loro utilizzo con .NET 2.0, che avevo scritto nel mio blog e che era relativo a C#. Purtroppo, il procedimento non è stato indolore come pensavo, ma ha richiesto un piccolo hack, che ho trovato leggendo questo post. Technorati Tag: .NET,Programming,VB .NET

posted @ Monday, March 23, 2009 6:42 PM | Feedback (0) | Filed Under [ VB .NET Orcas & .NET 3.5 ]

Primi problemi per Internet Explorer 8

Il nuovo motore di rendering di Internet Explorer 8 comincia a mietere le prime vittime… Il primo a cadere è il controllo Menu di ASP .NET: in determinate circostante, gli elementi del sottomenu non vengono visualizzati correttamente. Si tratta di un problemi di stili, problema che può essere risolto seguendo i suggerimenti indicati in questo post. Technorati Tag: .NET,Programming,ASP .NET,Programs

posted @ Friday, March 20, 2009 6:02 PM | Feedback (29) | Filed Under [ ASP .NET ]

Upload e download di file con ASP .NET MVC

In questo post viene mostrato come realizzare un controller per ASP .NET MVC in grado di gestire l'upload e il download di file da un sito web. Technorati Tag: .NET,Programming,ASP .NET

posted @ Friday, March 20, 2009 4:17 PM | Feedback (1) | Filed Under [ ASP .NET ]

Nuovo articolo su HTML.it

E' stato pubblicato un mio nuovo articolo nella sezione ASP .NET di HTML.it, dal titolo Utilizzare editor JavaScript con ASP.NET: TinyMCE. In esso mostro come è possibile utilizzare tale oggetto nelle applicazioni ASP .NET, illustrando anche la soluzione di alcuni problemi tipici, come l'utilizzo dell'editor all'interno di Master Page. Technorati Tag: .NET,Programming,ASP .NET,Tools,Web

posted @ Friday, March 20, 2009 9:49 AM | Feedback (0) | Filed Under [ ASP .NET ]

Utilizzare Log4Net in 30 secondi

Dovendo inserire un sistema di logging in un’applicazione abbastanza grossa su cui mi trovo a lavorare, ho pensato di utilizzare Log4Net, che ho sempre saputo essere molto efficiente e versatile. Il problema è che non l’avevo mai usato prima… Ho così fatto una ricerchina su Internet e sono giunto a questa pagina, dove viene spiegato veramente in 30 secondi come utilizzarlo e configurarlo! Technorati Tag: NET,Programming,ASP .NET,C#,Tools

posted @ Tuesday, March 17, 2009 4:03 PM | Feedback (1) | Filed Under [ C# ASP .NET ]

Screencast su Windows Azure

Quest’oggi, Alessandro Del Sole ha reso disponibile uno Screencast con argomento "Creare e distribuire applicazioni Web su Windows Azure". Personalmente, ma questa ovviamente è solo la mia opinione, la ritengo una piattaforma molto interessante.  Da un po’ di tempo avevo intenzione di fare qualche esperimento con essa… Ora non ho più scuse… Technorati Tag: .NET,Programming,Windows

posted @ Monday, March 16, 2009 4:26 PM | Feedback (0) | Filed Under [ C# VB .NET Windows Related Orcas & .NET 3.5 ]

Agenda dell'Installation Fest del 25 Marzo 2009

Su DotNetToscana è disponibile l'agenda dell'Installation Fest che si svolgerà presso il Polo Tecnologico di Navacchio, il giorno 25 Marzo 2009 alle ore 18.00. Nel corso dell'evento, terrò una sessione sulle novità di Windows 7 per gli sviluppatori: Windows 7, il sistema operativo successore di Vista, si preannuncia carico di novità, molte delle quali riguarderanno anche gli sviluppatori: tecnologia MultiTouch, Scenic Ribbon, DirectX 11, Web Services API, PowerShell 2.0... In questa sessione cercheremo di capire quali sono gli strumenti messi a disposizione e come essi cambieranno il modo di realizzare applicazioni, rendendole sempre più accattivanti e...

posted @ Friday, March 13, 2009 2:03 PM | Feedback (0) | Filed Under [ Windows Related ]

PDF Gratuito su PowerShell

In questo blog è disponibile un nuovo PDF gratuito su PowerShell, dal titolo Effective Windows PowerShell. Nelle intenzioni dell'autore, il documento sarà ampliato con nuovi contenuti nel corso dei prossimi mesi. Technorati Tags: Windows, Programming, Tools

posted @ Monday, March 9, 2009 9:00 PM | Feedback (4) | Filed Under [ Windows Related ]

Directory.GetFiles e pattern multipli

Il metodo Directory.GetFiles consente di recuperare i file con il pattern specificato all'interno di una determinata cartella. Purtroppo, esso non supporta i pattern multipli, ovvero non è possibile usare pattern come *.xls;*.doc per trovare in un colpo solo tutti i file XLS e DOC. Naturalmente si tratta di una limitazione facilmente aggirabile, ad esempio utilizzando il seguente extension method per l'oggetto DirectoryInfo: using System; using System.Collections.Generic;   namespace System.IO { public static...

posted @ Monday, March 9, 2009 2:07 PM | Feedback (8) | Filed Under [ C# Orcas & .NET 3.5 ]

Rilasciato ASP .NET MVC Release Candidate 2

E' stata rilasciata ieri la Release Candidate 2 di ASP .NET MVC, l'implementazione Microsoft del pattern di programmazione Model-View-Controller per il mondo ASP .NET. Il download è disponibile qui. Questa versione si basa su .NET 3.5 SP1 e, quindi, richiede Visual Studio 2008 SP1 (oppure Visual Web Developer 2008 SP1). Technorati Tag: .NET,Programming,ASP .NET,Updates

posted @ Wednesday, March 4, 2009 6:24 PM | Feedback (0) | Filed Under [ ASP .NET Updates & Service Pack ]

Campi di ricerca in un sito Dynamic Data

Nella visualizzazione di una tabella in un sito Dynamic Data è automaticamente inclusa una serie di campi per filtrare i dati. Nella versione attuale, tali ricerche si limitano ai valori delle chiavi esterne e dei campi booleani. Ma in ogni sito che si rispetti, deve esserci anche una ricerca con testo libero… In attesa che tale funzionalità sia integrata direttamente nei Dynamic Data, come promesso sul relativo Wiki, su CodePlex è disponibile un interessantissimo progetto chiamato Dynamic Data Filtering, un sistema che estende il Framework dei Dynamic Data permettendo di effettuare ricerche su ogni tipo di colonna, come si può...

posted @ Wednesday, March 4, 2009 9:51 AM | Feedback (3) | Filed Under [ ASP .NET Orcas & .NET 3.5 LINQ ]

Interessanti articoli sul Garbage Collector di .NET

Nel blog I know the answer (it's 42) è possibile trovare una serie è possibile trovare una serie di articoli che spiegano vari aspetti del funzionamento del Garbage Collector di .NET. Al momento sono ben 9: When does the .NET Compact Framework Garbage Collector run Forcing a Garbage Collection is not a good idea Series on dynamic memory management Reference Counting Garbage Collection Copying Garbage Collection Optimizing reference counting garbage collection Handling...

posted @ Tuesday, March 3, 2009 10:18 AM | Feedback (3) | Filed Under [ C# VB .NET .NET Compact Framework .NET 3.0 .NET Micro Framework Orcas & .NET 3.5 ]

System.ApplicationException

Oggi, mentre stavo per creare una Custom Exception in .NET, mi sono ricordato una cosa che avevo studiato nell'esame di certificazione 70-536, ovvero che la classe System.ApplicationException non dovrebbe essere utilizzata. Ma perché? Qual è il motivo che ha spinto Microsoft stessa a sostenere questa cosa? La risposta si trova facilmente con una ricerca su Google: JEFFREY RICHTER: System.ApplicationException is a class that should not be part of the .NET Framework. The original idea was that classes derived from SystemException would indicate exceptions thrown from the CLR (or system) itself, whereas non-CLR exceptions would be derived...

posted @ Monday, March 2, 2009 5:28 PM | Feedback (0) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 .NET Micro Framework Orcas & .NET 3.5 Certificazioni ]

Disponibile il materiale del 1° Workshop di DotNetToscana

Il materiale presentato durante il Workshop Microsoft .NET Framework tra Presente e Futuro, tenutosi il 20 Febbraio scorso a Pisa, è disponibile nella sezione Files della nostra Community. Technorati Tag: .NET,Programming,ASP .NET,C#,LINQ,Silverlight

posted @ Friday, February 27, 2009 4:48 PM | Feedback (0) | Filed Under [ C# ASP .NET Orcas & .NET 3.5 Silverlight LINQ ]

Utilizzare jQuery con DotNetNuke

Ormai la libreria jQuery ha una diffusione tale da poter essere considerata quasi uno standard di fatto; persino Microsoft ne ha riconosciuto l'importanza rilasciando una patch con cui abilitarne l'Intellisense in VS 2008. In questi giorni mi è capitato di utilizzarla all'interno di un portale di DotNetNuke. Il supporto a tale libreria è stato integrato nella versione 5.0 del CMS; se si utilizzano versioni precedenti, tuttavia, jQuery va in conflitto con i nomi dei moduli DNN che usano il carattere $, carattere che viene impiegato anche dalla libreria stessa. Per risolvere il problema, si deve utilizzare una particolare modalità...

posted @ Wednesday, February 25, 2009 8:47 PM | Feedback (0) | Filed Under [ ASP .NET Programmi ]

Creare un progetto di Windows Azure passo per passo

Sul blog di maor sono disponibili una serie di post che spiegano come creare e pubblicare un progetto di Windows Azure passo-passo: Creating and Executing First Cloud Project With Windows Azure Deploying Azure Project To The Cloud Windows Azure Sample Code Technorati Tag: .NET,Programming,Windows

posted @ Monday, February 23, 2009 6:15 PM | Feedback (0) | Filed Under [ Windows Related Orcas & .NET 3.5 ]

1° Workshop DotNetToscana – Le prime impressioni

Venerdì scorso, presso il Dipartimento di Informatica dell'Università di Pisa, si è svolto il primo Workshop dello User Group toscano su .NET, Microsoft. NET Framework tra presente e futuro. E' stata la prima esperienza, sia come organizzatore di eventi, sia come speaker. A distanza di un giorno e mezzo, volevo condividere con voi le mie prime impressioni sull'esperienza: L'organizzazione di un evento è veramente un'attività impegnativa: questo sarà forse perché è stato il nostro primo Workshop, e quindi ci tenevamo che fosse tutto perfetto; La "tensione per la prima" era evidente: la...

posted @ Sunday, February 22, 2009 1:02 PM | Feedback (2) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 .NET Micro Framework Orcas & .NET 3.5 Silverlight SQL Server LINQ ]

Codice Javascript per il controllo di codice fiscale e partita IVA

In questa pagina è possibile il codice Javascript necessario per effettuare il controllo di validità formale di codice fiscale e partita IVA. Con poche modifiche, è possibile adattarlo per l'utilizzo in combinazione con un CustomValidator. Technorati Tag: .NET,Programming,ASP .NET

posted @ Wednesday, February 18, 2009 10:57 AM | Feedback (0) | Filed Under [ ASP .NET ]

Una sfida per i programmatori

Spesso la programmazione è vista metaforicamente come una "sfida", con traguardi da raggiungere, ostacoli sul proprio cammino, aiuti, imprevisti, ecc… Microsoft e HTML.it hanno provato a rendere concreta questa sfida, proponendo un gioco in Silverlight in cui lo sviluppatore deve cercare di rispondere il più velocemente possibile ad una serie di domande, guadagnando così punti per entrare in classifica, allo scopo di ottenere uno sconto del 40% sull'acquisto di Visual Studio 2008 Professional + MSDN Premium. Technorati Tag: .NET,Programming,Visual Studio

posted @ Monday, February 16, 2009 2:28 PM | Feedback (0) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 .NET Micro Framework Orcas & .NET 3.5 Silverlight LINQ ]

Aggiornamento per l'Azure Services Training Kit

The Azure Services Training Kit includes a comprehensive set of technical content including hands-on labs, presentations, and demos that are designed to help you learn how to use the Azure Services Platform. The February release includes the following updates: 19 demo scripts that walkthrough several of the services 10 presentations covering the entire Azure Services Platform 3 additional hands-on labs for Live Services This...

posted @ Friday, February 13, 2009 9:31 AM | Feedback (2) | Filed Under [ Orcas & .NET 3.5 ]

Webcast su ASP .NET MVC

A partire da questo indirizzo è possibile scaricare il Webcast ASP.NET Model View Controller Framework Overview, che si è tenuto ieri. Nella stessa pagina è presente il link per accedere direttamente alle slide e agli esempi di codice. Technorati Tag: .NET,Programming,ASP .NET

posted @ Wednesday, February 11, 2009 10:17 AM | Feedback (1) | Filed Under [ ASP .NET ]

Inserire file Javascript in un Custom Control ASP .NET

In questo post viene spiegato come incorporare un file Javascript all'interno di un Custom Control di ASP .NET, in modo che non sia necessario distribuirlo insieme al controllo (poiché viene compilato al suo interno). Technorati Tag: .NET,Programming,ASP .NET

posted @ Friday, February 6, 2009 11:53 AM | Feedback (0) | Filed Under [ ASP .NET ]

UpdateProgress modale

Il controllo AJAX UpdateProgress permette di visualizzare automaticamente un messaggio di attesa quando il contenuto di un UpdatePanel viene aggiornato. In questo post viene spiegato come è possibile utilizzarlo per creare una finestra di attesa modale. Personalmente l'ho trovato utilissimo. Technorati Tags: .NET, Programming, ASP .NET, AJAX

posted @ Monday, February 2, 2009 9:30 PM | Feedback (1) | Filed Under [ ASP .NET ]

ASP .NET Dynamic Data e controllo AJAX Calendar – Parte seconda

Qualche giorno fa ho parlato dei problemi nell'utilizzo del controllo AJAX Calendar in combinazione con gli ASP .NET Dynamic Data. Oltre a quello evidenziato, c'è un altro inconveniente: sebbene il controllo supporti la globalizzazione, anche se viene inserito in un sito Dynamic Data che utilizza la lingua italiana, il calendario visualizza i mesi e i giorni in inglese. Per risolvere anche questo problema, si deve impostare la proprietà EnableScriptLocalization del controllo ScriptManager (all'interno del file Site.master) su true: <asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true" EnableScriptGlobalization="true" /> In...

posted @ Monday, February 2, 2009 1:20 PM | Feedback (1) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

Aggiornamento per il .NET Framework 3.5

Questa sera Windows Update ha scaricato un aggiornamento denominato Microsoft .NET Framework 3.5 Family Update. Su MSDN è disponibile l'elenco di tutti i problemi risolti. Technorati Tags: .NET, Programming, Updates

posted @ Friday, January 30, 2009 7:10 PM | Feedback (1) | Filed Under [ Orcas & .NET 3.5 Updates & Service Pack ]

Impostare l'ordinamento iniziale di una tabella con i Dynamic Data

Per impostazioni predefinita, i dati mostrati nelle GridView di un sito con i Dynamic Data non hanno un ordinamento particolare. In questo post è spiegato come decidere l'ordinamento iniziale attraverso l'uso di un semplice Custom Attribute e di una manciata righe di codice. Technorati Tag: .NET,Programming,ASP .NET

posted @ Friday, January 30, 2009 2:22 PM | Feedback (0) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

Il nostro evento su MSDN Flash

Su MSDN Flash del 28 Gennaio 2009, nella sezione Eventi Community e Partner, è presente anche il primo Workshop di DotNetToscana, Microsoft .NET Framework tra presente e futuro, che ricordo si svolgerà il 20 Febbraio presso il Dipartimento di Informatica dell'Università di Pisa. Potete trovare l'indirizzo e l'agenda dell'evento sul nostro sito. Chi viene? Technorati Tags: .NET, Programming, ASP .NET, LINQ, Silverlight

posted @ Wednesday, January 28, 2009 10:27 PM | Feedback (0) | Filed Under [ C# VB .NET ASP .NET .NET 3.0 Orcas & .NET 3.5 Silverlight SQL Server LINQ ]

ASP .NET Dynamic Data e controllo AJAX Calendar

Se si prova ad inserire il controllo AJAX Calendar in un sito basato sugli ASP .NET Dynamic Data, esso sarà visualizzato in maniera errata: Per risolvere il problema, è necessario aggiungere un'apposita sezione nel file Site.css, che si può trovare nella root del sito: /* Addition to fix rendering of AJAX calendar extender http://www.kevdaly.co.nz/weblog/Default.aspx?p=f6d27b62-1a36-45c5-9fc0-6c5547e60774 */ table td table td { border-left:none !important; border-right:none !important; border-bottom:none !important; padding-left:0px !important; padding-right:0px !important; padding-top:0px !important; padding-bottom:0px !important; }...

posted @ Wednesday, January 28, 2009 12:05 AM | Feedback (2) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

Ritorno al passato

Oggi ho riaperto Visual Studio per un'attività a cui non mi dedicavo da tempo: lo sviluppo di una utility personale, per risolvere un problema nell'utilizzo del PC. La realizzazione di piccoli programmi ad uso personale, ovvero la possibilità di "istruire" il computer per fargli fare quello che voglio io, nella maniera in cui voglio io, è stata la molla che, per prima, mi ha fatto appassionare alla programmazione. Negli ultimi tempi, tuttavia, non ho più avuto modo di dedicarmi a queste cose: o realizzavo "grossi programmi", oppure studiavo le nuove tecnologie, con progetti di Visual Studio nati e morti...

posted @ Sunday, January 25, 2009 5:11 PM | Feedback (6) | Filed Under [ Tutto & Oltre :-) ]

Windows 7 Developer Guide

Building applications that are easy to use, visually appealing, and offer high performance is a challenge that developers face every day. Innovative applications can greatly improve the user experience, empowering companies to differentiate their services and solutions. However, developers are increasingly asked to do more in less time, while also optimizing the power and performance requirements of their applications. The Windows 7 platform makes it easy for developers to create engaging, user-friendly applications by providing familiar tools and rich development features that allow them to take advantage of the latest PC capabilities. ...

posted @ Thursday, January 22, 2009 10:09 PM | Feedback (1) | Filed Under [ Windows Related ]

Usare Invio per spostarsi tra i controlli

Fin dalle prime versioni, Windows ci ha abituato ad utilizzare il tasto TAB per spostare il focus da un controllo al successivo: questo è, ovviamente, il comportamento predefinito anche per le applicazioni Windows Forms realizzate con .NET. Il cambiamento del focus può essere però realizzato anche via codice, utilizzando il metodo SelectNextControl: esso sposta automaticamente il focus sul controllo successivo, secondo la numerazione stabilita dalla proprietà TabIndex. Ad esempio, per fare in modo che, alla pressione del tasto INVIO in un TextBox, il focus passi alla casella successiva, immaginando che la proprietà TabIndex sia impostata correttamente, si deve scrivere: ...

posted @ Tuesday, January 20, 2009 2:17 PM | Feedback (0) | Filed Under [ VB .NET ]

Creare un sito "in sola lettura" con gli ASP .NET Dynamic Data

Prosegue il mio studio degli ASP .NET Dynamic Data. L'articolo che propongo oggi, tratto da MSDN, spiega come realizzare un sito in cui è possibile visualizzare i dati, ma non modificarli o aggiungerli. Technorati Tags: .NET, Programming, ASP .NET, Dynamic Data

posted @ Monday, January 19, 2009 9:33 PM | Feedback (0) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

AJAX UpdatePanel e UpdateMode

Per impostazione predefinita, la proprietà UpdateMode del controllo UpdatePanel di AJAX è impostata su Always, il che significa che il contenuto del controllo è aggiornato ad ogni postback asincrono. L'altro valore possibile, Conditional, invece, fa sì che il controllo sia aggiornato, lato server, solo quando si richiama il metodo Update del pannello. Questo video, di circa 13 minuti, mostra in pratica il significato di tale proprietà. Technorati Tags: .NET, Programming, ASP .NET, AJAX

posted @ Sunday, January 18, 2009 11:58 PM | Feedback (2) | Filed Under [ ASP .NET ]

Personalizzare i template dei Dynamic Data

Le pagine mostrate dagli ASP .NET Dynamic Data sono facilmente personalizzabili, in quanto basate su template. In questo post sono spiegati i semplici passi necessari per ottenere questo risultato. Technorati Tags: .NET, Programming, ASP .NET, Dynamic Data

posted @ Saturday, January 17, 2009 6:07 PM | Feedback (0) | Filed Under [ ASP .NET ]

Certificare i propri programmi per Windows 7

La beta 1 di Windows 7 è appena stata rilasciata, e già è disponibile un aggiornamento del documento che spiega come ottenere la certificazione che le proprie applicazioni siano compatibili e funzionino correttamente con il nuovo sistema operativo: per scaricarlo, basta fare clic qui. Tra le note, una delle più importanti è la seguente, che di fatto cambia le modalità di ottenimento della certificazione: We also improved the process for gaining certification. Microsoft will not require developers to have their applications tested for certification by authorized testing authorities. Instead, Microsoft is developing a test kit you...

posted @ Monday, January 12, 2009 12:14 PM | Feedback (1) | Filed Under [ Windows Related ]

CAPTCHA… Chi era costui?

Tutti noi, compilando form su Internet, abbiamo a che fare con i cosiddetti CAPTCHA, magari senza sapere di cosa si tratta: CAPTCHA è l'acronimo di  "completely automated public Turing test to tell computers and humans apart" (Test di Turing pubblico e completamente automatico per distinguere computer e umani). In parole semplici, un CAPTCHA è una di quelle immagini contenenti numeri e lettere colorate, "sbilenche" o con delle linee sopra, che devono essere digitate in una casella di test per poter effettuare il submit di un form Come si legge su Wikipedia, I captcha sono utilizzati per impedire che i bot utilizzino...

posted @ Sunday, January 11, 2009 8:53 PM | Feedback (11) | Filed Under [ ASP .NET ]

Conversione da RGB a codice esadecimale

Oggi ho avuto la necessità di convertire un colore, di cui conoscevo la rappresentazione RGB, in formato esadecimale, per poterlo utilizzare sul Web. Con una rapida ricerca su Internet, sono giunto in questo pagina, in cui viene fornito un semplice codice Javascript che permette di effettuare la trasformazione in automatico. Lo segnalo qui, in caso dovesse tornarmi utile . Technorati Tags: Programming, Web

posted @ Wednesday, January 7, 2009 9:30 PM | Feedback (0) | Filed Under [ ASP .NET ]

Enum.TryParse

L'oggetto Enum di .NET non espone il metodo TryParse, per tentare il cast verso un valore dell' enumerazione senza ottenere un' eccezione in caso di valore non valido (come avviene, ad esempio, con Int.TryParse). Tale funzione, tuttavia, può essere facilmente realizzata utilizzando un opportuno extension method, come descritto in questo post. Technorati Tags: .NET, Programming, C#

posted @ Wednesday, January 7, 2009 12:07 AM | Feedback (1) | Filed Under [ C# Orcas & .NET 3.5 ]

Programmazione parallela su ioProgrammo

Su ioProgrammo di Gennaio 2009 è stata pubblicata la prima parte di un mio aritcolo dedicato alla programmazione parallela con .NET 3.5 utilizzando le Parallel Extensions.   Technorati Tag: .NET,Programming,C#

posted @ Monday, January 5, 2009 3:20 PM | Feedback (0) | Filed Under [ C# Orcas & .NET 3.5 ]

Nuova versione del correttore ortografico per Visual Studio 2008

Da qualche giorno è stata rilasciata la versione 2.2 dello Spell checker per Visual Studio 2008, destinata esclusivamente alla versione con SP1 (per le release precedenti di VS, si deve utilizzare la release 2.1). Il correttore ortografico richiede che nel sistema sia installato Word 2003 oppure 2007 e supporta il testo scritto nei blocchi di stile, di codice e nei file JS, CS, VB, CSS, CPP e H. In questo post è disponibile una descrizione dell'add-in, insieme ad una guida che spiega come utilizzarlo. Technorati Tag: .NET,Programming,Visual Studio,Tools

posted @ Sunday, January 4, 2009 11:21 AM | Feedback (0) | Filed Under [ Orcas & .NET 3.5 ]

Nuovo articolo su DotNetToscana

L'amico Andrea Angella ha recentemente pubblicato sulla nostra community DotNetToscana un articolo dal titolo Introduzione al .NET Micro Framework. Personalmente lo ritengo molto interessante, anche per chi non conosce questo nuovo settore in cui Microsoft sta investendo e vuole farsi un'idea delle possibilità che offre. Technorati Tag: .NET,Programming

posted @ Thursday, January 1, 2009 9:52 PM | Feedback (0) | Filed Under [ Orcas & .NET 3.5 ]

Report Viewer Add-on for Visual Web Developer 2008 Express Edition

This is the add-on for Microsoft Visual Web Developer 2008 Express Edition that includes the RDLC designer and Microsoft Report Viewer 2008. The RDLC designer creates and edits RDLC files with RDL 2005 schema. Il download (che richiede Visual Web Developer 2008 Express Edition con SP1) è disponibile qui. Technorati Tag: .NET,Programming,ASP .NET,Tools

posted @ Friday, December 26, 2008 12:03 PM | Feedback (2) | Filed Under [ ASP .NET Orcas & .NET 3.5 Updates & Service Pack ]

Creare un UpdatePanel via codice

Qualche tempo fa ho sviluppato una Web Control Library al cui interno avevo la necessità di inserire un UpdatePanel (naturalmente ponendo alcuni oggetti al suo interno). Trattandosi di un Template control, esso non può essere aggiunto direttamente come si farebbe, ad esempio, con un pulsante di ASP .NET; si deve, invece, creare una classe che implementa l'interfaccia ITemplate, come illustrato in questo post. Technorati Tag: .NET,Programming,ASP .NET,AJAX

posted @ Wednesday, December 17, 2008 5:06 PM | Feedback (2) | Filed Under [ ASP .NET ]

6 passaggi per iniziare ad utilizzare Azure

Per iniziare ad utilizzare la nuova piattaforma Azure sono sufficienti 6 semplici passaggi, come riportato in questo post: Install Vista SP1 or Windows 2008 RTM Install VS 2008, then upgrade it to SP1. (azure needs .net 3.5 sp1) Install Azure SDK Install VS Azure SDK Install SDS SDK (optional SQL Data Services required for some Azure SDK samples) Extract the samples.zip, and then run the rundevstore.cmd from a elevated cmd prompt. Semplice, no?...

posted @ Wednesday, December 17, 2008 10:49 AM | Feedback (0) | Filed Under [ C# VB .NET Orcas & .NET 3.5 ]

Metodi ResolveUrl e ResolveClientUrl

La classe Control di ASP .NET fornisce due metodi per ottenere un percorso di file valido per il browser, partendo da un path relativo: ResolveUrl oppure ResolveClientUrl. Leggendo la documentazione, sembra che questi metodi restituiscano valori che possono essere usati indistintamente. In realtà, ciò che si ottiene è diverso: come si può leggere qui, ResolveClientUrl restituisce un percorso relativo alla posizione della pagina corrente, mentre ResolveUrl restituisce il percorso relativo alla root del sito. Technorati Tag: .NET,Programming,ASP .NET

posted @ Tuesday, December 16, 2008 10:34 AM | Feedback (0) | Filed Under [ ASP .NET ]

Nuova sezione di MSDN

E’ stata da poco inaugurata una nuova sezione sezione Community su MSDN, all’interno del Team Suite Developer Center. Sul blog di Cherala, si chiedono commenti sull’iniziativa. Technorati Tag: .NET,Programming,Team Foundation Server

posted @ Friday, December 12, 2008 12:04 PM | Feedback (0) | Filed Under [ Orcas & .NET 3.5 Team Foundation Server ]

Poster con le combinazioni di tasti per Visual Studio 2008

Per i collezioni o gli appassionati, è possibile scaricare i poster con le combinazioni di tasti per Visual Studio 2008: Poster per C# Poster per Visual Basic Technorati Tag: .NET,Programming,C#,VB .NET

posted @ Friday, December 12, 2008 10:12 AM | Feedback (1) | Filed Under [ C# VB .NET Orcas & .NET 3.5 ]

PDF gratutito sull'Entity Framework

In questo post del blog di Zeeshan Hirani è disponibile il link per scaricare gratuitamente un PDF di ben 514 pagine che fornisce una guida introduttiva all'ADO .NET Entity Framework, corredata da numerosi esempi di codice. Fonte: Mario De Ghetto Blog Technorati Tag: .NET,Programming,ADO .NET

posted @ Wednesday, December 10, 2008 10:12 AM | Feedback (1) | Filed Under [ ADO .NET & SQL Orcas & .NET 3.5 ]

Trucchi per IIS e ASP .NET

Cercando alcune informazioni su IIS 7.0, sono capitato in questo blog, in cui vengono regolarmente inseriti (quasi ogni giorno) trucchi e suggerimenti per ASP .NET e IIS . Molto interessante... Technorati Tag: .NET,Programming,ASP .NET

posted @ Thursday, December 4, 2008 9:25 AM | Feedback (0) | Filed Under [ ASP .NET ]

Generare file XML con LINQ

Questo post spiega come quanto è sempre possibile generare file XML a partire da una collezione di oggetti utilizzando LINQ. Technorati Tag: .NET,Programming,C#,LINQ

posted @ Wednesday, December 3, 2008 5:32 PM | Feedback (0) | Filed Under [ C# Orcas & .NET 3.5 LINQ ]

Windows 7 Developer Guide

Sul sito MSDN Code Gallery è disponibile la versione 1.1 della Windows 7 Developer Guide, un documento di 44 pagine (in continua evoluzione) che riassume gli aspetti fondamentali del nuovo sistema operativo, da tenere presenti quando si sviluppano applicazioni espressamente progettate per lui. Il download è disponibile qui. Technorati Tags: Programming, Windows

posted @ Tuesday, December 2, 2008 2:33 PM | Feedback (0) | Filed Under [ Windows Related ]

Mostrare solo alcuni campi con i Dynamic Data

Un po' di tempo fa, qui nel mio blog avevo espresso lo stupore di fronte alla prima esperienza con i Dynamic Data del .NET Framework 3.5 SP1. In questi giorni ho avuto l'occasione di fare qualche prova più approfondita; in particolare, mi sono scontrato con la necessità di personalizzare l'interfaccia web fornita di default. In questa attività sono stato aiutato dal grande Alessandro Del Sole, che si è sempre dimostrato molto disponibile. L'ultima cosa che gli ho chiesto, in ordine di tempo, è stato se fosse possibile escludere alcuni campi dalla GridView con la lista dei record,  facendo in...

posted @ Monday, December 1, 2008 9:35 PM | Feedback (0) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

Pagine master, file Javascript e immagini di sfondo

Credo che il 99% dei siti sviluppati con ASP .NET, a partire dalla versione 2.0, facciano uso delle pagine Master. Tra le altre cose, esse possono essere utilizzate per aggiungere il riferimento a file Javascript (*.js) in modo da renderli automaticamente disponibili a tutte le pagine. Il problema di questo approccio è che il percorso del file Javascript (quello indicato nell'attributo src del tag script) è relativo alla posizione della Master page: ad esempio, se la master page è nella root del sito e il file javascript si trova nella directory Js, il tag script avrà la seguente forma: <script...

posted @ Monday, December 1, 2008 1:13 AM | Feedback (2) | Filed Under [ ASP .NET ]

Word processor per ASP .NET

Come ho scritto nel forum di DotNetToscana, in questi giorni ho avuto modo di fare qualche prova con due tra i più diffusi word processor javascript per il web: FCKeditor e TinyMCE. In particolare, ho approfondito l'utilizzo di quest'ultimo, che mi sembra davvero ben fatto e facile da utilizzare. E' open-source, rilasciato con licenza LGPL e compatibile con la maggior parte dei browser attuali (Mozilla, Internet Explorer, Firefox, Opera, Safari e Google Chrome). Sul sito Internet del produttore è anche disponibile la versione preliminare di un controllo per facilitare l'integrazione dell'editor in applicazioni ASP .NET, ma si tratta comunque di...

posted @ Thursday, November 27, 2008 11:27 PM | Feedback (4) | Filed Under [ C# VB .NET ASP .NET ]

Attivare la funzionalità di Edit and Continue per i Web Application Projects

Per impostazione predefinita, nei Web Application Projects l'opzione Edit and Continue è disattivata. Non so se questa cosa è dovuta a motivi particolari, ma per fortuna attivarla è semplicissimo: basta porre il segno di spunta ad un paio di checkbox, come indicato in questo post. Technorati Tags: .NET, Programming, Visual Studio, ASP .NET

posted @ Wednesday, November 26, 2008 11:32 PM | Feedback (0) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

SharpZipLib 1, DotNetZip 0

Dopo aver letto il mio post sui problemi con l'oggetto GZipStream, l'amico Matteo Baglini mi ha consigliato di provare la libreria DotNetZip, disponibile su CodePlex. Incuriosito, l'ho scaricata ed ho subito provato ad usarla per comprimere il mio solito file PDF da 4,48 MB (anche di esso ho parlato nello scorso post). Risultato: anche con DotNetZip ho ottenuto uno ZIP di 4,44 MB; in pratica ho raggiunto lo stesso livello di compressione ottenibile con la classe GZipStream. Forse sarò io che ho utilizzato un file PDF "problematico", ma per il momento continuo ad usare SharpZipLib, che occupa pure meno di...

posted @ Tuesday, November 25, 2008 11:46 PM | Feedback (9) | Filed Under [ C# ]

I problemi dell'oggetto GZipStream

Il .NET Framework, a partire dalla versione 2.0, fornisce il namespace System.IO.Compression, al cui interno troviamo, tra le altre, la classe GZipStream, con cui è possibile comprimere e decomprimere file in formato ZIP. Facendo qualche prova, tuttavia, ho notato che essa non garantisce un elevato livello di compressione, per usare un eufemismo... Il dubbio mi è venuto quando ho compresso un file PDF di 4,48 MB, ottenendo uno ZIP di 4,44 MB; mi sembrava un po' strano, quindi ho provato ad utilizzare WinRAR, che ha prodotto un archivio di appena 1,46 MB. Allora ho scaricato SharpZipLib: comprimendo lo stesso file...

posted @ Sunday, November 23, 2008 9:55 PM | Feedback (4) | Filed Under [ C# ]

Stored Procedure con Entity Framework

A questo indirizzo è disponibile una breve spiegazione di come usare le stored procedure con l'Entity Framework di .NET 3.5 SP1. Technorati Tag: .NET,Programming,ADO .NET

posted @ Friday, November 21, 2008 10:39 AM | Feedback (0) | Filed Under [ ADO .NET & SQL Orcas & .NET 3.5 ]

Le meraviglie dello StringBuilder - Javascript version

Ieri ho portato una testimonianza di come l'utilizzo dello StringBuilder di .NET mi abbia consentito di migliorare sensibilmente le prestazioni di un algoritmo. Oggi la mia opera di ottimizzazione è proseguita, ed è toccato ad una routine Javascript, che creava una tabella HTML concatenando stringhe con, ahimé, l'operatore +. In questo caso la modifica dell'algoritmo è stata un filino più lunga, perché Javascript non include un oggetto analogo allo StringBuilder (o StringBuffer, secondo la terminologia Java). Ma è bastata una ricerca su CodeProject per trovare questo progetto, che fornisce uno StringBuilder per Javascript semplicissimo da usare e davvero efficiente. ...

posted @ Thursday, November 20, 2008 2:36 PM | Feedback (3) | Filed Under [ Tutto & Oltre :-) ]

Le meraviglie dello StringBuilder

Le stringhe in .NET sono oggetti immutabili, quindi se si devono concatenare insieme un numero elevato si stringhe, usare l'operatore + è inefficiente, perché ogni volta verrebbe creata in memoria una nuova stringa. Per ovviare al problema, si deve utilizzare l'oggetto StringBuilder che, come si legge su MSDN, rappresenta una sequenza mutabile di caratteri, quindi ad esso è possibile aggiungere, rimuovere, inserire o sostituire caratteri senza la necessità di istanziare un nuovo oggetto in memoria. Questa è la favoletta che tutti noi conosciamo... Però quando oggi, facendo debug di codice scritto da altri, ho sostituito tutte le concatenazioni di stringhe con...

posted @ Wednesday, November 19, 2008 6:34 PM | Feedback (5) | Filed Under [ C# VB .NET ASP .NET .NET 3.0 Orcas & .NET 3.5 ]

Determinare gli aggiornamenti di una pagina web

Come tutti sappiamo, utilizzando la proprietà IsPostBack è possibile determinare se una pagina ASP .NET è stata caricata per la prima volta oppure in seguito ad un PostBack (causato, tipicamente, dalla pressione di un pulsante). Ma se si ha la necessità di sapere quando una pagina è ricaricata con il tasto Aggiorna del browser? In questo caso non esiste una proprietà "pronta all'uso", ma cercando sulla rete si possono trovare diverse soluzioni, le più efficienti delle quali si basano sull'utilizzo di un opportuno HttpModule. A questo indirizzo è disponibile una esauriente descrizione del problema, accompagnata da un file ZIP che...

posted @ Tuesday, November 18, 2008 9:01 PM | Feedback (0) | Filed Under [ ASP .NET ]

Recuperare la Specific Culture di una cultura

L'oggetto CultureInfo di .NET è utilizzato per indicare una cultura, che può essere composta da due parti: una cultura neutrale e una specifica. Ad esempio, nella cultura en-US, en rappresenta la cultura neutrale, mentre US è la cultura specifica. Quando si ha un oggetto di tipo CultureInfo, è possibile recuperare la cultura neutrale semplicemente accedendo alla sua proprietà TwoLetterISOLanguageName, mentre per la cultura specifica si deve ricorrere alla classe RegionInfo: RegionInfo ri = new RegionInfo("en-US"); string specificCulture = ri.TwoLetterISORegionName; Ovviamente lo stesso risultato si può ottenere anche manipolando la stringa en-US, ma questa soluzione garantisce che, se le regole di codifica...

posted @ Monday, November 17, 2008 6:03 PM | Feedback (0) | Filed Under [ C# ]

Attenzione all'inferenza dei tipi di .NET 3.5

Una delle novità maggiormente decantate di .NET 3.5 è l'inferenza dei tipi, ovvero la possibilità di determinare staticamente, a tempo di compilazione, il tipo di una variabile in base al suo contenuto. Tutto quello che serve, per utilizzarla, è indicare var come tipo di dato: quando incontra questa parola chiave, il compilatore sa che deve analizzare i dati memorizzati nella variabile per determinarne il tipo. Si tratta di una funzionalità molto comoda e che, quando si utilizza LINQ, spesso permette di evitare la creazione di classi specializzate per contenere i risultati delle interrogazioni, consentendo comunque di avere un accesso tipizzato...

posted @ Saturday, November 15, 2008 5:52 PM | Feedback (4) | Filed Under [ C# Orcas & .NET 3.5 ]

Compatibilità di Internet Explorer 8 con i siti web esistenti

Internet Explorer 8, attualmente in versione beta 2, utilizza un nuovo motore di rendering per le pagine web. Dal punto di vista degli sviluppatori e dei grafici, questo significa che i siti Internet progettati per Internet Explorer 7 potrebbero non essere visualizzati correttamente. In situazioni del genere, è possibile configurare un sito perché venga visualizzato allo stesso modo in cui apparirebbe con IE7, utilizzando la cosiddetta Compatibility View. Si tratta di un'impostazione molto semplice, che richiede essenzialmente di definire un particolare header HTTP. A questo indirizzo sono disponibili maggiori informazioni sull'argomento. Technorati Tags: .NET, Programming, ASP .NET

posted @ Sunday, November 9, 2008 10:41 PM | Feedback (0) | Filed Under [ ASP .NET ]

Introduzione a iTextSharp

In questi giorni sto guardando iTextSharp, una libreria gratuita per realizzare file PDF dalle proprie applicazioni .NET, per desktop e Web che siano. E' uno strumento potente, ricco di funzionalità, ma non molto facile da usare. A questo indirizzo ho trovato un semplice tutorial introduttivo che spiega come muovere i primi passi con questa libreria. Non è molto lungo, ma presenta comunque una serie di concetti importanti, tutti corredati da esempi di codice. Technorati Tag: .NET,Programming,C#,VB.NET,ASP .NET,Tools

posted @ Thursday, November 6, 2008 5:20 PM | Feedback (0) | Filed Under [ C# VB .NET ASP .NET ]

Recuperare dati utilizzando stored procedure con LINQ

In questo post è disponibile un dettagliato esempio che spiega come si può utilizzare LINQ-to-SQL per eseguire stored procedure. Technorati Tags: .NET, Programming, LINQ

posted @ Wednesday, November 5, 2008 10:00 PM | Feedback (0) | Filed Under [ LINQ ]

Uno sguardo alle novità di .NET 4.0

Come molti di voi sanno, da qualche giorno è possibile scaricare dal sito Microsoft una macchina virtuale contenente la prima CTP di Visual Studio 2010 e del .NET Framework 4.0. In questo post, invece, è contenuta una breve panoramica delle principali novità che troveremo nella Base Class Library prossima ventura. Technorati Tag: .NET,Programming,Visual Studio,Updates,C#,VB .NET. Updates

posted @ Wednesday, November 5, 2008 4:53 PM | Feedback (0) | Filed Under [ C# VB .NET ASP .NET Updates & Service Pack ]

Video sull'autenticazione con ASP .NET

A questo indirizzo del blog di Scott Guthrie è disponibile una grande quantità di materiale relativo ai meccanismi di autenticazione forniti con ASP .NET. Tra le altre cose, è fornito il link ad uno screencast di circa 18 minuti in cui viene mostrata una panoramica sull'utilizzo dei principali controlli per realizzare tali funzionalità (Login, LoginView, CreateUserWizard, PasswordRecovery). Utile per chi non ha mai utilizzato questi strumenti. Technorati Tags: .NET, Programming, ASP .NET

posted @ Tuesday, November 4, 2008 9:18 PM | Feedback (0) | Filed Under [ ASP .NET ]

Distanza di Levenshtein

La distanza di Levenshtein è un algoritmo che permette di calcolare la "distanza" tra due stringhe, restituendo un valore che indica quanto due stringhe sono simili (più il valore è basso, più le stringhe sono simili). Essa è utile per realizzare funzionalità del tipo Forse cercavi di Google. Questo post spiega come implementare l'algoritmo in una funzione CLR per SQL Server, che può essere richiamata, ad esempio, all'interno di una stored procedure. L'ho provato ieri e devo dire che dà risultati molto soddisfacenti, con tempi di elaborazione accettabili. Technorati Tags: .NET, Programming, C#, SQL Server

posted @ Tuesday, November 4, 2008 7:29 PM | Feedback (5) | Filed Under [ C# SQL Server ]

.NET Micro Framework SDK 3.0 rilasciato

Lo scorso 28 ottobre è stata rilasciata la versione definitiva dell'SDK del .NET Micro Framework 3.0. Il download è disponibile qui, mentre per maggiori informazioni è possibile fare riferimento al sito di Microsoft Connect. Technorati Tag: .NET,Programming,.NET Micro Framework,Updates

posted @ Friday, October 31, 2008 6:12 PM | Feedback (0) | Filed Under [ .NET Micro Framework Updates & Service Pack ]

Personalizzare il controllo DataPager di ASP .NET

Il nuovo controllo DataPager di ASP .NET permette di aggiungere funzionalità di paginazione ai propri controlli collegati ad una fonte dati. Può essere personalizzato in molti modi, ad esempio per mostrare automaticamente un messaggio nella forma Pagina X di Y (Elementi totali: Z): <asp:TemplatePagerField> <PagerTemplate> <b> Page <asp:Label runat="server" ID="CurrentPageLabel" Text="<%# Container.TotalRowCount>0 ? ...

posted @ Thursday, October 30, 2008 11:29 PM | Feedback (0) | Filed Under [ ASP .NET ]

LINQ to CSV

Avevo la necessità di elaborare un file CSV, risultato di un'esportazione da Excel, selezionando solo le righe con determinati valori. Confidando nelle potenzialità di LINQ, ho fatto una rapida ricerca su Internet e sono arrivato in questa pagina, in cui è disponibile una libreria (corredata dal codice sorgente) che permette di realizzare interrogazioni LINQ su un file in formato CSV. L'unica cosa da fare per utilizzarla è definire una classe con l'indicazione di quali sono i campi del file che si vuole recuperare. Technorati Tags: .NET, Programming, ASP .NET

posted @ Wednesday, October 29, 2008 1:59 PM | Feedback (0) | Filed Under [ LINQ ]

AJAX AutoComplete e valori errati

Il controllo AutoCompleteExtender dell'AJAX Control Toolkit consente di creare facilmente TextBox con funzionalità di completamento automatico, ottenendo le alternative attraverso l'invocazione di un Web service. In alcuni casi, tuttavia, i valori restituiti possono sembrare errati: ad esempio, seguendo l'esempio disponibile sul sito, ma cercando di mostrare valori che iniziano con uno o più 0, si noterà che tali 0 non appaiono nelle voci del menu a tendina. Per risolvere il problema, si devono racchiudere tra virgolette i valori restituiti dal Web service. Ad esempio:  1 [System.Web.Services.WebMethod] 2 [System.Web.Script.Services.ScriptMethod] 3 public string[] GetCompletionList(string prefixText, int count) 4 { 5 string[] ret =...

posted @ Monday, October 27, 2008 7:00 PM | Feedback (2) | Filed Under [ ASP .NET ]

Il controllo ListView di ASP .NET 3.5 svelato

A questo indirizzo (e negli articoli correlati) è disponibile un'esaustiva spiegazione di tutte le numerose funzionalità del controllo ListView di ASP .NET 3.5. Ogni esempio è accompagnato da un'immagine con cui è possibile rendersi immediatamente conto di tutte le feature messe a disposizione. Technorati Tags: .NET, Programming, ASP .NET

posted @ Friday, October 24, 2008 9:42 PM | Feedback (1) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

Modificare l'indirizzo mail di un utente usando le Membership API

Utilizzando le Membership API di ASP .NET, è molto semplice modificare l'indirizzo mail di un utente salvato nel suo profilo: MembershipUser user = Membership.GetUser("UserNameUtente"); user.Email = "mail@dominio.com"; Membership.UpdateUser(user); Il codice si commenta da solo: recuperiamo l'utente tramite il metodo Membership.GetUser, cambiamo il suo indirizzo di mail e, infine, aggiorniamo il profilo richiamando Membership.UpdateUser. Technorati Tags: .NET, Programming, ASP .NET

posted @ Thursday, October 23, 2008 8:16 PM | Feedback (0) | Filed Under [ ASP .NET ]

Blog di Windows 7 per sviluppatori

Quest'oggi su MSDN è stato inaugurato un nuovo blog dedicato allo sviluppo sulla prossima piattaforma Windows 7: This blog will mainly focus on the development aspects of Windows 7 by providing valuable content for developers. We shell call this blog “The Windows 7 Blog for Developers”. By valuable content we mean that this blog will be a “one stop shop” on the road to get yourself familiar with what Windows 7 has to offer for developers and how you can “Light-Up” using Windows 7 features in your application. Aspetto di vedere quali contenuti saranno...

posted @ Thursday, October 23, 2008 2:51 PM | Feedback (0) | Filed Under [ Windows Related ]

Disponibili i sorgenti di WPF

Notizia molto interessante: a partire da oggi è disponibile il codice sorgente di Windows Presentation Foundation per .NET 3.5 SP1. Questo rilascio va ad aggiungersi alla prima informata di codice resa accessibile circa un anno fa; in quell'occasione Microsoft rilasciò solo una parte del Framework .NET, lasciando però intendere che, nei mesi a venire, avrebbe progressivamente fornito anche gli altri tasselli. Sembra proprio che questa promessa sia stata rispettata. Technorati Tag: .NET,Programming,Visual Studio,C#,VB .NET

posted @ Wednesday, October 22, 2008 3:39 PM | Feedback (0) | Filed Under [ C# VB .NET Orcas & .NET 3.5 ]

Serializzazione JSON con ASP .NET

ASP .NET fornisce un oggetto con cui è possibile serializzare/deserializzare oggetti secondo lo standard JSON, il DataContractJsonSerlializer. Esso è contenuto nel namespace System.Runtime.Serialization.Json, ma per utilizzarlo si deve aggiungere al proprio progetto un riferimento all'assembly System.ServiceModel.Web.dll. Ogni classe o struttura che si vuole serializzare deve essere decorata con l'attributo DataContract; al suo interno, i membri che interessano devono avere l'attributo DataMember. Ad esempio:  [DataContract] public class ShoppingCart { [DataMember] public List<string> Articles { get; set; } [DataMember] public string UserName { get; set; } public ShoppingCart() ...

posted @ Wednesday, October 22, 2008 2:02 PM | Feedback (1) | Filed Under [ C# ASP .NET ]

Krypton Toolkit 3.0.6

Nuovo rilascio per il Krypton Toolkit, che giunge a quota 3.0.6. Queste le novità: Major Bug Fixes Locking/Unlocking computer causes text to disappear. Text not drawing at all for some Visual Studio projects. ComboBox drop down not working on some computers. Cannot edit Image properties with KryptonContextMenu. Design time change of Ribbon.MinimizedMode...

posted @ Wednesday, October 22, 2008 9:21 AM | Feedback (0) | Filed Under [ C# VB .NET .NET 3.0 Orcas & .NET 3.5 ]

Query dinamiche con LINQ

Utilizzando LINQ possiamo creare facilmente comandi per interrogare basi di dati SQL direttamente da codice, con tutti i vantaggi derivanti dalla type-safety e dal controllo dei parametri a tempo compilazione. In alcuni casi, tuttavia, ad esempio quando si realizza un sito Internet e, in particolare, il suo motore di ricerca interno, può capitare di dover eseguire interrogazioni su un database utilizzando una serie più o meno lunga di parametri impostati dall'utente (ad esempio, ricerca di prodotti solo in una certa categoria, con vincoli sul prezzo e sulla disponibilità, ecc.). Questa funzionalità può essere realizzata creando manualmente la query SQL, ovvero...

posted @ Tuesday, October 21, 2008 1:42 PM | Feedback (1) | Filed Under [ C# VB .NET ADO .NET & SQL ASP .NET SQL Server LINQ ]

Mantenere la posizione di un Panel all'interno di un UpdatePanel

Supponiamo di avere un UpdatePanel al cui interno abbiamo inserito un controllo Panel, impostando la sua proprietà ScrollBars su Auto, in modo da visualizzare automaticamente le barre di scorrimento nel caso in cui gli oggetti che contiene non siano completamenti visibili. Se uno di questi ultimi determina un PostBack, l'UpdatePanel ci garantisce che sono il pannello sarà aggiornato. La posizione delle barre di scorrimento, tuttavia, non sarà mantenuta, quindi il controllo "resetterà" le sue coordinate di visualizzazione, mostrando inesorabilmente l'angolo in alto a sinistra. Per risolvere il problema, si deve utilizzare un piccolo "trucco" basato su Javascript: 1...

posted @ Monday, October 20, 2008 10:58 PM | Feedback (0) | Filed Under [ ASP .NET ]

[Cross-Post] Fogli di stile per l'AJAX Control Toolkit e TreeView con CheckBox e AutoPostBack

Un po' per i problemi di UGIdotNET, un po' per provare la piattaforma di blogging della nostra nuova Community, nei giorni scorso ho fatto due post relativi all'utilizzo di AJAX e dell'AJAX Control Toolkit. Visto che DotNetToscana non ha ancora una grande popolarità (ma sicuramente ancora per poco ), riporto qui sul muro i link ai due post, in modo da dare loro una maggiore visibilità: Fogli di stile per l'AJAX Control Toolkit TreeView con CheckBox e AutoPostBack Technorati Tags: .NET, Programming, ASP .NET, AJAX

posted @ Monday, October 20, 2008 8:20 PM | Feedback (0) | Filed Under [ ASP .NET ]

Impossibile accedere all'oggetto Profile da una Web Application

Attraverso l'oggetto Profile di ASP .NET è possibile gestire con estrema facilità una serie di informazioni associate all'utente, informazioni che il framework si occupa di salvare e recuperare automaticamente per noi. E' sufficiente inserire nel file web.config una sezione chiamata profile, come la seguente: <profile> <properties> <add name="PostalCode" /> </properties> </profile> Così facendo, ASP .NET creerà una nuova classe di nome Profile, con la quale è possibile accedere alle informazioni del profilo: Profile.PostalCode = txtPostalCode.Text; Quanto detto, tuttavia, non è sempre vero. ASP .NET crea in automatico la classe Profile solo se stiamo lavorando in un progetto di...

posted @ Tuesday, September 30, 2008 11:17 PM | Feedback (1) | Filed Under [ ASP .NET ]

Utilizzare i Web Services di Virtual Earth

This software development kit (SDK) provides programming reference and how-to topics for getting started with the Virtual Earth Web Services. Il download è disponibile qui. Technorati Tags: Live, Programming, Tools

posted @ Monday, September 29, 2008 7:45 PM | Feedback (0) | Filed Under [ C# VB .NET ASP .NET ]

ListView e DataPager

Il controllo ListView di ASP .NET 3.5 è affetto da uno strano comportamento. Se viene popolato dinamicamente (ovvero richiamando il suo metodo DataBind) ed è configurato per l'utilizzo in combinazione con un DataPager, la prima volta che si preme il pulsante Next di quest'ultimo in realtà viene ricaricata la stessa pagina, come se la paginazione non avvenisse. Tutti i successivi clic sui link di navigazione, invece, funzionano correttamente. Facendo una ricerca su Internet, sembra che si tratti di un problema noto. Fortunatamente, sono state proposte diverse soluzione all'inconveniente. Una delle più semplici consiste nell'aggiungere una chiamata al metodo DataBind nell'evento...

posted @ Monday, September 22, 2008 7:32 PM | Feedback (1) | Filed Under [ ASP .NET ]

Il mio nuovo articolo su ioProgrammo

Il buon Simone ha citato alcuni articoli pubblicati sul numero di Ottobre di ioProgrammo, relativi al motion detection e al riconoscimento delle immagini. Uno di questi l'ho scritto io: più precisamente, ho trattato la realizzazione di un sistema di videosorveglianza utilizzando C# e una comune webcam. Come sempre, se vi capita di leggerlo, mi farebbe piacere sapere cosa ne pensate Technorati Tag: .NET,Programming,C#

posted @ Thursday, September 18, 2008 4:49 PM | Feedback (7) | Filed Under [ C# ]

XNA Game Studio 3.0 beta

Entro la prossima settimana dovrebbe essere rilasciata la versione beta di XNA Game Studio 3.0. L'annuncio ufficiale e l'elenco delle novità sono disponibili sul blog del team di sviluppo. Technorati Tags: .NET, Programming, Updates

posted @ Sunday, September 14, 2008 11:13 PM | Feedback (0) | Filed Under [ Updates & Service Pack ]

Open XML Format SDK 2.0

Da qualche giorno è disponibile sul sito Microsoft la CTP di settembre dell'Open XML Format SDK 2.0. Il pacchetto, che richiede il .NET Framework 3.5, può essere scaricato qui. Technorati Tags: .NET, Programming, Tools, Updates

posted @ Saturday, September 13, 2008 12:18 PM | Feedback (0) | Filed Under [ C# VB .NET ASP .NET Orcas & .NET 3.5 ]

LINQ e il Data Access Layer

In questo periodo ho avuto modo di approcciarmi a LINQ. Dopo aver letto un po' di materiale, mi è venuta spontanea una domanda: "In un'applicazione multi-tier posso usare direttamente LINQ al posto del classico Data Access Layer?". Ho quindi cercato maggiori informazioni sull'argomento e sono capitato in questo post, in cui si affronta proprio questa tematica. Ad ogni modo, non mi sento ancora in grado di pronunciarmi sul fatto che LINQ possa o no sostituire un Data Access Layer tradizionale, lo conosco ancora troppo poco per pronunciarmi... Technorati Tag: .NET,Programming,LINQ

posted @ Thursday, September 11, 2008 3:09 PM | Feedback (4) | Filed Under [ LINQ ]

Evidenziare una casella di testo ed impostare il pulsante di default in una pagina ASP .NET

ASP .NET mette a disposizione proprietà e metodi con cui è possibile decidere quale casella di testo, tra quelle presenti in una pagina, avrà il focus e quale deve essere il pulsante di default, ovvero quello su cui sarà eseguito il clic quando si preme il tasto INVIO: Page.Form.DefaultButton = Page.FindControl("btnCerca").UniqueID; ((TextBox)Page.FindControl("txtRicerca")).Focus(); Questo esempio fa sì che il pulsante btnCerca sia impostato come default e che la casella di testo txtRicerca abbia il focus. Technorati Tags: .NET, Programming, ASP .NET

posted @ Wednesday, September 10, 2008 11:17 PM | Feedback (0) | Filed Under [ ASP .NET ]

Controlli di login e pagine master

Qualche giorno fa avevo parlato di un bug del controllo Login, quando viene inserito in una Master Page e usato in combinazione con un ValidationSummary. In realtà, lo stesso problema affligge tutti i controlli che hanno a che fare con la gestione dell'autenticazione (cambio password, recupero, ecc.). Fortunatamente, la soluzione pubblicata nello scorso post è valida anche per gli tutti gli altri oggetti in questione. Technorati Tag: .NET,Programming,ASP .NET

posted @ Wednesday, September 10, 2008 12:47 PM | Feedback (0) | Filed Under [ ASP .NET ]

Quando conviene avere Visual Studio in italiano

Il template ASP .NET Dynamic Data crea un sito web completo di tutto... Però con l'interfaccia localizzata nella lingua di Visual Studio. Il problema è che, sviluppando siti per clienti "locali", tipicamente ci si aspetta che le stringhe siano in italiano. Per evitare di ridefinirsi a mano tutti i messaggi nella nostra lingua, l'unico modo è avere a disposizione una copia di Visual Studio in italiano, quindi creare il sito con essa. Technorati Tags: .NET, Visual Studio, Programming, ASP .NET, Dynamic Data

posted @ Saturday, September 6, 2008 4:00 PM | Feedback (0) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

ASP .NET Dynamic Data Site... Semplicemente senza parole!

Come anticipato ieri, volevo dare un'occhiata alla feature ASP .NET Dynamic Data. Ebbene... Ho creato una nuova Web Application, utilizzando l'apposito template, ho aggiunto una classe di tipo LINQ-To-SQL al progetto, ho scommentato UNA (1) riga di codice nel file Global.asax, ho premuto F5 e... L'applicazione era già lì, bella e pronta all'uso!!!! Mi ci sono voluti meno di 5 minuti per creare una completa interfaccia web per l'accesso e la modifica del database. Che dire... LA COSA MI HA LASCIATO COMPLETAMENTE SENZA PAROLE... Technorati Tags: .NET, Programming, ASP .NET, Dynamic Data

posted @ Saturday, September 6, 2008 10:12 AM | Feedback (3) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

ASP .NET Dynamic Data

Cercando risorse su LINQ, sono capitato su questo post del mitico Scott Guthrie, in cui si parla di ASP .NET Dynamic Data, una feature che fa parte delle ASP .NET 3.5 Extensions e che consente di creare con grande facilità siti web per l'inserimento, la visualizzazione e la modifica dei dati contenuti in un database, utilizzando LINQ-to-SQL. Me lo segno, sperando di poterci dare un'occhiata al più presto. Technorati Tags: .NET, Programming, ASP .NET, Dynamic Data

posted @ Friday, September 5, 2008 2:17 PM | Feedback (3) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

Windows Home Server Developer Guidelines aggiornata

La Developer Guidelines di Windows Home Server è stata recentemente aggiornata. Il download è disponibile qui. Technorati Tag: Programming,Windows Home Server

posted @ Friday, September 5, 2008 10:24 AM | Feedback (17) | Filed Under [ Windows Home Server ]

Controlli Login e ValidationSummary in un sito con Master Page

I controlli Login e ValidationSummary sono progettati per lavorare insieme: se si imposta la proprietà ValidationGroup del ValidationSummary sull'ID del controllo Login, il validatore mostrerà automaticamente i messaggi di errore che si verificano durante il tentativo di login (ad esempio, password non inserita). Questo è il comportamento di tali oggetti se sono inseriti una pagina che non ha una pagina master associata. Se, invece, si mettono in una Content Page, il ValidationSummary non funzionerà correttamente. Si tratta di un bug dovuto all'errata denominazione che viene assegnata al controllo Login. Per risolvere il problema, basta inserire il seguente codice nella routine...

posted @ Wednesday, September 3, 2008 7:08 PM | Feedback (1) | Filed Under [ ASP .NET ]

Utilizzare il proprio database per la gestione degli utenti con ASP .NET

Per impostazione predefinita, quando si vuole utilizzare l'autenticazione di un sito ASP .NET, le informazioni sugli utenti sono memorizzate in un database di nome aspnetdb che viene automaticamente creato nell'istanza di SQL Server Express installata sulla stessa macchina su cui è presente il sito. Naturalmente, è possibile modificare questa opzione, ad esempio nel caso in cui si voglia usare un database esistente. In questo post è possibile trovare alcune informazioni che spiegano come fare. Technorati Tag: .NET,Programming,ASP .NET

posted @ Tuesday, September 2, 2008 5:42 PM | Feedback (0) | Filed Under [ ASP .NET ]

Distribuzione di un'applicazione con il .NET Framework Client Profile

Tra le numerose novità del Service Pack 1 di .NET 3.5 c'è il .NET Framework Client Profile, una sorta di "versione ridotta" del .NET Framework 3.5 che contiene solo i componenti necessari per l'esecuzione di applicazioni Smart Client. A questo indirizzo è disponibile un documento che spiega come effettuare la distruzione di applicazioni con tale modalità. Technorati Tag: .NET,Programming

posted @ Tuesday, August 19, 2008 1:31 PM | Feedback (3) | Filed Under [ Orcas & .NET 3.5 ]

Feature Pack per SQL Server 2008

A due giorni dal rilascio della versione RTM di SQL Serve 2008, sul sito Microsoft Downloads è già stato reso disponibile il primo Feature Pack, comprendente ben 17 aggiunte, tra cui SQL Server Compact 3.5 SP1, SQL Server 2008 Command Line Utilities e un add-in per Excel e Visio 2007 che permette di sfruttare le funzionalità di Data Mining del DBMS direttamente all'interno delle applicazioni. Technorati tags: SQL Server, Programming, Tools

posted @ Saturday, August 9, 2008 7:29 PM | Feedback (0) | Filed Under [ SQL Server ]

WCF Security Guide

E' stata rilasciata da qualche giorno la WCF Security Guide, una serie di linee guida di Microsoft per lo sviluppo di soluzioni basate su Windows Communication Foundation. Si tratta di un corposo PDF di ben 689 pagine disponibile per il download gratuito su CodePlex. Technorati Tag: .NET,Programming

posted @ Wednesday, August 6, 2008 2:27 PM | Feedback (0) | Filed Under [ C# VB .NET ASP .NET .NET 3.0 ]

Virtual Earth per ASP .NET

The Virtual Earth ASP.NET Control has been released as part of the Windows Live Tools for Microsoft Visual Studio Community Technical Preview.  Now you can use the Virtual Earth Map Control API's without writing any JavaScript.  You can drag and drop the control in Visual Studio and set properties on it.  You can also set up ASP.NET server-side events. Maggiori dettagli qui. Technorati Tag: .NET,Programming,ASP .NET,Live

posted @ Wednesday, July 30, 2008 2:31 PM | Feedback (0) | Filed Under [ ASP .NET ]

.NET Micro Framework 3.0 in beta

Sul blog del team di sviluppo, si legge che il .NET Micro Framework 3.0 è disponibile in versione beta. Può essere scaricato dal sito Connect e il suo rilascio finale è previsto entro l'anno. Technorati Tag: .NET Micro Framework,Updates,Programming

posted @ Tuesday, July 29, 2008 12:02 PM | Feedback (0) | Filed Under [ .NET Micro Framework Updates & Service Pack ]

PHP Driver per SQL Server 2005

E' stata rilasciata la versione 1.0 del driver PHP per SQL Server 2005, un'estensione per PHP 5 che permette di accedere ai dati residenti su un sistema SQL Server 2005 dai propri script. Il download è disponibile qui, su CodePlex sono disponibili i codici sorgenti. Fonte: Pietro Brambati Blog Technorati Tag: Tools,Programming,SQL Server

posted @ Tuesday, July 29, 2008 9:30 AM | Feedback (0) | Filed Under [ SQL Server ]

Esempio di uso del namespace System.AddIn

Su MSDN Magazine di Luglio 2008 è stato pubblicato un articolo che spiega come utilizzare le classi del nuovo namespace System.AddIn per creare applicazioni Windows Forms estendibili. Technorati Tags: .NET, Programming, CS

posted @ Thursday, July 24, 2008 7:12 PM | Feedback (0) | Filed Under [ C# Orcas & .NET 3.5 ]

IronEditor

IronEditor è un IDE con supporto al Dynamic Language Runtime (DLR). L'attuale versione 1.0, disponibile su CodePlex, può essere usata per realizzare applicazioni con IronPhyton e IronRuby. Technorati Tag: .NET,Programming,Tools

posted @ Wednesday, July 23, 2008 9:52 AM | Feedback (0) | Filed Under [ Programmi ]

Materiale su Expression Studio

Partendo da questo indirizzo è possibile avere accesso ad una discreta quantità di documentazione e materiale su Expression Studio. Technorati Tag: Programming,Tools,Programs

posted @ Friday, July 18, 2008 5:43 PM | Feedback (0) | Filed Under [ Tutto & Oltre :-) ]

How I got Started in Software Development

Sapevo che prima o poi sarebbe toccata anche a me... Visto che Daniele chiama, ecco la mia storia: A quale età hai cominciato a programmare? Se per programmare vale anche un programma con la mitica istruzione PRINT "MARCO", allora abbastanza precocemente, direi intorno ai 12 anni, sul Commodore64. Come hai cominciato a programmare? Già da quando i miei genitori mi regalarono un Vic-20 di seconda mano (se ricordo bene ero in terza elementare), mi venne la curiosità di sapere "come facevano a muoversi quelle cose sullo schermo"... Ma quella rimase appunto una curiosità fino a...

posted @ Thursday, July 17, 2008 4:19 PM | Feedback (0) | Filed Under [ Tutto & Oltre :-) ]

LINQ-to-SQL e ADO .NET a confronto

Cercando materiale su LINQ, ho trovato questo post in cui vengono presentati alcuni scenari di utilizzo di LINQ, paragonati al corrispettivo di ADO .NET. Secondo me è interessante soprattutto per chi non ha alcuna esperienza con LINQ e vuole farsi un'idea colpo d'occhio di quello che permette di fare e di come può semplificare la scrittura di codice Technorati Tag: .NET,Programming,ADO .NET,LINQ

posted @ Tuesday, July 15, 2008 11:56 AM | Feedback (0) | Filed Under [ ADO .NET & SQL Orcas & .NET 3.5 LINQ ]

Creare un'immagine base per le macchine virtuali

Questa guida spiega come creare un'immagine base per macchine virtuali di Virtual PC con Windows Server 2003, una procedura molto utile, ad esempio, quando si devono creare spesso ambienti di test per le proprie applicazioni. Technorati Tag: OT,Programming

posted @ Monday, July 14, 2008 2:37 PM | Feedback (0) | Filed Under [ Tutto & Oltre :-) ]

Linee guida per le applicazioni Windows Mobile

A questo indirizzo sono disponibili alcuni file PDF contenenti le principali linee guida per lo sviluppo di applicazioni per Windows Mobile. Le note riguardando Windows Mobile 2003 SE, 5 e 6. Technorati Tag: Programming,Windows Mobile

posted @ Monday, July 14, 2008 9:48 AM | Feedback (1) | Filed Under [ Windows Mobile ]

Microsoft XNA Game Studio 3.0 CTP

Microsoft XNA Game Studio is a toolset which makes creating great video games for Windows-based PC’s, the Zune digital media player and the Xbox 360 console (with an active XNA Creators Club subscription) easier than ever. Il download di questa Community Technology Preview è disponibile qui. E' necessario Visual C# Express Edition 2008 oppure Visual Studio 2008. Technorati tags: .NET, Programming, Tools, Updates

posted @ Saturday, July 12, 2008 7:17 PM | Feedback (0) | Filed Under [ C# Orcas & .NET 3.5 Updates & Service Pack ]

Gestire Hyper-V con PowerShell

Su CodePlex è disponibile il progetto PowerShell management Library for Hyper-V, una libreria che consente di gestire le macchine virtuali installate sulla macchina. Attualmente sono fornite ben 66 funzioni, che vanno dalla definizione di una nuova VM alla creazione di backup e snapshot. Fonte: Virtual PC Guy's WebLog Technorati Tag: Windows,Programming

posted @ Thursday, July 10, 2008 9:59 AM | Feedback (0) | Filed Under [ Windows Related ]

Un articolo sul Garbage Collector

Su MSDN Magazine di Giugno 2008 è stato pubblicato un interessante articolo su come il Garbage Collector di .NET gestisce i cosiddetti oggetti grandi, ovvero oggetti che occupano più di 85.000 byte di memoria. Technorati Tag: .NET,Programming

posted @ Tuesday, July 8, 2008 5:26 PM | Feedback (0) | Filed Under [ C# VB .NET ADO .NET & SQL ASP .NET .NET 3.0 Orcas & .NET 3.5 ]

Tutorial sulla programmazione con XNA

E' stato reso disponibile un tutorial video della durata di più di 2 ore che affronta diversi aspetti della programmazione di giochi 2D utilizzando il framework XNA. Gli argomenti affrontati sono numerosi: XNA Game Studio project creation Adding art assets to a project Displaying background art Sprites Simple collision techniques Scoring Font usage Keyboard and Gamepad input Basic C# programming within the XNA Framework Il...

posted @ Monday, July 7, 2008 4:58 PM | Feedback (1) | Filed Under [ C# Tutto & Oltre :-) ]

Web server from here

VS2008 Web Server Here Shell Extension è un'estensione della shell di Windows che aggiunge un comando al menu contestuale visualizzato quando si fa clic con il tasto destro del mouse su una directory: esso consente di avviare immediatamente il web server integrato in Visual Studio (WebDev.WebServer.exe) caricando l'applicazione contenuta in quella cartella. Per maggiori informazioni e per il link al download è possibile fare riferimento a questo post. Technorati Tag: .NET,Programming,ASP .NET,Tools

posted @ Thursday, July 3, 2008 6:22 PM | Feedback (0) | Filed Under [ ASP .NET Tutto & Oltre :-) Orcas & .NET 3.5 ]

Sandcastle torna su CodePlex

Dopo qualche tempo di "indecisione", Sandcastle è tornato su CodePlex... Come molti di voi avranno intuito, questo significa che il team di sviluppo ha deciso di rilasciare anche il codice sorgente. Technorati Tags: .NET, Programming, Tools

posted @ Wednesday, July 2, 2008 9:12 PM | Feedback (0) | Filed Under [ C# VB .NET CodePlex ]

Copia/incolla in una GridView

Girando sulla rete alla ricerca di documentazione, sono incappato in un post dal titolo Copia/Incolla in DataGridView, in cui viene spiegato chiaramente e con l'ausilio di esempi di codice come aggiungere questa funzionalità al controllo in questione. Technorati Tags: .NET, Programming, ASP .NET

posted @ Wednesday, July 2, 2008 6:48 PM | Feedback (0) | Filed Under [ ASP .NET ]

Pubblicato il mio articolo sul riconoscimento vocale

Sul numero di Luglio di ioProgrammo è stato pubblicato un mio articolo sul riconoscimento vocale con .NET 3.0. Il taglio è molto pratico, dopo una breve introduzione passo subito ad illustrare il funzionamento delle principali classi del namespace System.Speech. E' stata la mia prima esperienza su una rivista cartacea (finora ho collaborato solo con testate online, come HTML.it), ma spero che questo articolo sia l'inizio di una lunga serie Technorati Tags: .NET, Programming, C#

posted @ Wednesday, July 2, 2008 2:08 PM | Feedback (2) | Filed Under [ C# Tutto & Oltre :-) .NET 3.0 ]

Quando utilizzare StringBuilder

Recentemente mi è stato chiesto quando conviene utilizzare uno StringBuilder piuttosto che concatenare le stringhe con il +. L'argomento è stato affrontato più volte, ma credo sia comunque utile riportare quando dice MSDN, in modo da chiarire la situazione: String objects are immutable in that they cannot be changed once created. Methods that act on strings actually return new string objects. Therefore, for performance reasons, large amounts of concatenation or other involved string manipulation should be performed with the StringBuilder class.   Technorati Tags: .NET, Programming, C#, VB .NET, ASP .NET

posted @ Sunday, June 29, 2008 2:09 PM | Feedback (4) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 ]

PInvoke Interop Assistant

PInvoke Interop Assistant è un tool per la generazione automatica di chiamate P/Invoke a partire da funzioni dell'API di Windows. Grazie ad esso, è possibile generare codice managed per C# e VB .NET. In origine presentato in un articolo di MSDN Magazine di Gennaio 2008, è stato recentemente pubblicato su CodePlex. Fonte: CLR Team Blog Technorati Tag: .NET,Programming,Tools,C#,VB .NET

posted @ Tuesday, June 24, 2008 12:36 PM | Feedback (0) | Filed Under [ C# VB .NET ]

StarUML

Dove lavoro utilizziamo StartUML per la creazione di diagrammi UML. Si tratta di un tool open-source molto completo nelle sue funzionalità, facile da usare ed estendibile con il supporto ai vari linguaggi di programmazione (quelli inclusi comprendono C++, C# e Java). Si possono anche aggiungere moduli personalizzati che mettono a disposizione nuovi oggetti da inserire nei diagrammi (sul sito ne è disponibile un discreto numero). Personalmente, l'ho utilizzato per fare il reverse engineering di un progetto C++: è bastato selezionare i file .H da inserire e fare un paio di clic del mouse per ottenere un diagramma completo, con...

posted @ Tuesday, June 24, 2008 9:30 AM | Feedback (0) | Filed Under [ Tutto & Oltre :-) ]

Webcast su Windows Mobile

A questo indirizzo sono disponibili i link a 5 webcast dedicati a chi desidera cominciare a sviluppare sulla piattaforma Windows Mobile. Technorati Tags: Windows Mobile, .NET, Programming

posted @ Monday, June 23, 2008 7:18 PM | Feedback (0) | Filed Under [ C# VB .NET Orcas & .NET 3.5 Windows Mobile ]

Web Development Helper

Di questo tool si è già parlato in passato, ma lo evidenzio comunque nel mio blog anche come promemoria personale. Web Development Helper aggiunge una finestra all'interno di Internet Explorer grazie alla quale è possibile visualizzare tutte le chiamate HTTP e HTTPS che vengono effettuate, il contenuto del ViewState della pagina corrente, e molto altro... Rimando a questo post del blog di MSDN Italia per maggiori informazioni e per trovare il link al download. Technorati Tag: .NET,Programming,ASP .NET,Web,Tools

posted @ Monday, June 23, 2008 9:42 AM | Feedback (0) | Filed Under [ ASP .NET ]

Una libreria per la compressione di file ZIP

Per la compressione di file ZIP in .NET, ho sempre utilizzato la famosa libreria SharpZipLib. In questi giorni, però, sono venuto a conoscenza di DotNetZip, di cui è stata recentemente rilasciata la versione 1.5. Si tratta di un progetto open-source pubblicato su CodePlex e rilasciato con licenza Microsoft Public License. Tra le funzionalità offerte, c'è anche la possibilità di creare archivi auto-estraenti e file ZIP che possono essere direttamente inviati all'oggetto Response.OutputStream, cosa che permette di generare dinamicamente archivi compressi scaricabili via Internet. Technorati Tags: .NET, Programming, C#, ASP .NET, VB .NET

posted @ Saturday, June 21, 2008 2:21 PM | Feedback (0) | Filed Under [ C# VB .NET ADO .NET & SQL ASP .NET .NET 3.0 Orcas & .NET 3.5 CodePlex ]

Passaggio da .NET 2.0 a 3.5 e AJAX

Oggi ho provato a convertire un sito fatto in .NET 2.0 alla nuova versione 3.5. L'applicazione web in questione fa di uso di AJAX. La procedura di aggiornamento automatico apparentemente è andata a buon fine, tuttavia alla prima prova di compilazione ho ottenuto un messaggio di errore secondo cui non è possibile caricare l'assembly System.Web.Extensions versione 1.0.61025.0. Dopo una ricerca su Internet, ho trovato un post che spiega la causa del problema e come si deve intervenire per risolverlo... In pratica, basta cambiare un parametro nel web.config specificando il numero di versione corretto per la libreria. Technorati Tags: .NET, Programming,...

posted @ Friday, June 20, 2008 2:02 PM | Feedback (1) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

Offerta di lavoro per progetto di clustering

Bitflow, una giovane azienda pisana che si dedica al networking ed allo sviluppo di soluzioni web, cerca urgentemente un sistemista Windows con esperienza nell'ambito del clustering e del load balancing per uno studio di fattibilità ed implementazione relativo ad un progetto della durata di 2/3 mesi. Il lavoro si svolgerà presso la sede dell'azienda. Per inviare il curriculum e per avere maggiori informazioni, potete utilizzare l'indirizzo info@bitflow.it. Technorati Tag: Windows,Programming,Hardware

posted @ Monday, June 9, 2008 7:29 PM | Feedback (0) | Filed Under [ Tutto & Oltre :-) ]

Il codice non può essere auto-commentante

Sui blog di MSDN è apparso un post per me molto interessante, in cui si discute del fatto che il codice non può commentarsi da sé, quindi è necessario scrivere commenti per spiegare quello che si sta sviluppando. Si tratta di un argomento che mi sta molto a cuore: personalmente, sono dell'opinione che sia meglio un commento in più di uno in meno... Anzi, forse io esagero e tendo a commentare più del dovuto, ma lo faccio nell'ottica di riprendere il codice dopo qualche tempo dalla sua scrittura: quello che all'inizio può apparire chiarissimo (nel momento in cui lo si...

posted @ Monday, June 9, 2008 4:05 PM | Feedback (8) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 .NET Micro Framework Orcas & .NET 3.5 Silverlight LINQ ]

Windows Installer 4.5 SDK

Mercoledì scorso, su segnalazione di un amico, ho annunciato il rilascio di Windows Installer 4.5. In questo post sono disponibili alcune note aggiuntive sull'SDK relativo. Technorati Tag: Windows,Tools,Programming

posted @ Monday, June 9, 2008 9:52 AM | Feedback (0) | Filed Under [ Windows Related ]

Bug nella libreria Argotic

Qualche giorno fa ho segnalato la libreria Argotic, per la gestione dei feed RSS. Durante il suo utilizzo, mi sono accorto che la proprietà Comments della classe Argotic.Syndication.RssItem, che dovrebbe contenere l'URL dei commenti ad un post, in realtà valeva sempre null, anche quando il tag comments era presente nel file XML. Sono così andato a vedere nei sorgenti della libreria, per isolare il problema, ed ho trovato l'inghippo. C'è un errore di ortografia nella stringa utilizzata per recuperare l'URL dei commenti; il file Argotic.Syndication.RssItem.cs (contenuto nel namespace Argotic.Core) contiene la seguente istruzione:  XPathNavigator commentsNavigator = source.SelectSingleNode("coments", manager); ovvero "coments" è...

posted @ Thursday, June 5, 2008 9:37 AM | Feedback (4) | Filed Under [ C# CodePlex ]

Expression Encoder 2 SDK

The Expression Encoder 2 SDK includes documentation, samples, and code to help you work with the Expression Encoder object model and extend the functionality of Expression Encoder 2. L'SDK può essere utilizzato con Visual Studio 2008, Visual C# Express 2008 o Visual C++ Express 2008 . Il download è disponibile qui. Technorati Tag: .NET,Programming

posted @ Tuesday, June 3, 2008 2:23 PM | Feedback (0) | Filed Under [ C# VB .NET Orcas & .NET 3.5 ]

Nuova CTP per le Parallel Extensions di .NET 3.5

Parallel Extensions to the .NET Framework is a managed programming model for data parallelism, task parallelism, and coordination on parallel hardware unified by a common work scheduler. Parallel Extensions makes it easier for developers to write programs that scale to take advantage of parallel hardware by providing improved performance as the numbers of cores and processors increase without having to deal with many of the complexities of today’s concurrent programming models. E' stata rilasciata una nuova CTP di questa libreria, scaricabile gratuitamente da qui. Ne approfitto per ricordare che già da un po' di tempo...

posted @ Tuesday, June 3, 2008 9:20 AM | Feedback (0) | Filed Under [ C# VB .NET Orcas & .NET 3.5 ]

Recuperare il chiamante di un metodo

In alcuni casi può essere necessario conoscere il nome del metodo che ha richiamato una certa routine. Ad esempio, per creare un meccanismo di logging in cui un ipotitetico metodo WriteLog scrive, tra le altre informazioni, anche il nome della funzione che lo ha invocato. Per fare questo, basta analizzare il contenuto dello Stack Trace:   1 StackTrace stackTrace = new StackTrace(); 2 StackFrame stackFrame = stackTrace.GetFrame(1); 3 MethodBase methodBase = stackFrame.GetMethod(); 4 string methodName = methodBase.Name; L'istruzione numero 2 recupera il primo stack frame, contenente il riferimento al metodo che ha richiamato la routine attualmente in esecuzione. Se, invece del numero 1, si utilizza, ad...

posted @ Monday, June 2, 2008 4:30 PM | Feedback (1) | Filed Under [ C# ]

Sandcastle si aggiorna

Dal sito di CodePlex è possibile scaricare la nuova versione di Sandcastle, la 2.4.10520. Si tratta della stessa build utilizzata per produrre la documentazione di Visual Studio 2008 SP1. Sono stati corretti numerosi bug, come riportato sul blog del team di sviluppo. Technorati Tag: .NET,Programming,Tools,Visual Studio,Updates

posted @ Friday, May 30, 2008 9:37 AM | Feedback (0) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 Orcas & .NET 3.5 Updates & Service Pack LINQ ]

Krypton Toolkit 2.8.5

Nuovo aggiornamento per questo insieme di controlli per Windows Forms. L'update in questione corregge alcuni bug ed aggiunge nuove combinazioni di colori ispirate a Windows Vista e Windows Media Player, che si affiancano alle palette già presenti in stile Office 2007. Per il download diretto, fate clic qui. Technorati Tag: Updates,.NET,Programming,C#,VB .NET,Tools

posted @ Thursday, May 29, 2008 9:16 AM | Feedback (0) | Filed Under [ C# VB .NET .NET 3.0 Orcas & .NET 3.5 Updates & Service Pack ]

Video su Visual Studio Exstensibility

In questo post di MSDN sono disponibili i link ad una serie di video relativi all'estensione di Visual Studio. Si tratta di una presentazione della durata complessiva di 2 ore, ricca di demo, tenutasi presso lo VISUG User Group. Technorati Tag: .NET,Programming,Visual Studio

posted @ Monday, May 26, 2008 3:34 PM | Feedback (0) | Filed Under [ Orcas & .NET 3.5 ]

.NET e C++: due modi diversi di programmare

Tranquilli, non ho assolutamente intenzione di scrivere un post in cui metto a confronto .NET e C++, dicendo quale è meglio e quale è peggio... Su questo argomento è già stato scritto di tutto . Vorrei invece fare una riflessione sulla diverse "filosofie di programmazione" che seguo quando lavoro in C++ rispetto a quando uso .NET. Come i miei 25 lettori sanno bene, nell'ultimo anno ho accumulato una certa esperienza con .NET, accompagnata dal conseguimento di diverse certificazioni. Anche i lavori che ho fatto finora hanno sempre riguardato questa piattaforma.  Ultimamente, però, nella mia nuova società sto affrontando un...

posted @ Friday, May 23, 2008 3:30 PM | Feedback (1) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 .NET Micro Framework Orcas & .NET 3.5 LINQ ]

.NET Framework Client Profile

Una delle novità del .NET Framework 3.5 SP1, come già segnalato da Corrado, è il Client Profile: The .NET Framework 3.5 Client Profile (Client Profile) was created to answer the feedback from many customers that a smaller framework was needed specifically for Client Applications. The Client Profile is a subset of assemblies already contained within .NET Framework 3.5 Service Pack 1. The Client Profile subset is focused on fulfilling the needs of Client applications. In questo post è disponibile una descrizione dettagliata di cosa è e di come funziona. Technorati Tag: .NET,Programming,Visual Studio,Updates

posted @ Thursday, May 22, 2008 2:39 PM | Feedback (6) | Filed Under [ Orcas & .NET 3.5 Updates & Service Pack ]

Libreria per il parsing degli RSS

Mi sembra che fosse stato già segnalato tempo fa sul muro, ma nell'incertezza lo riporto nuovamente, anche come appunto personale: all'indirizzo http://www.codeplex.com/Argotic è disponibile un framework molto ben fatto e in continuo sviluppo per la gestione di feed in formato RSS, Atom, OPML, APML, BlogML, RSD... e chi più ne ha più ne metta . La versione compilata della libreria è disponibile sia nella versione per .NET 2.0 sia per .NET 3.5. Technorati Tag: .NET,Programming,C#,VB .NET,ADO .NET,ASP .NET

posted @ Monday, May 19, 2008 5:49 PM | Feedback (3) | Filed Under [ C# VB .NET ADO .NET & SQL ASP .NET .NET 3.0 Orcas & .NET 3.5 ]

Rilasciata l'Enterprise Library 4.0

Giovedì scorso è stata rilasciata la versione 4.0 dell'Enteprise Library di Microsoft. Come sempre, MSDN è il sito di riferimento per la documentazione tecnica, mentre il download (insieme a video, esempi e molto altro ancora) è disponibile su CodePlex. Technorati Tag: .NET,Programming,Visual Studio,C#,VB .NET,ADO .NET,ASP .NET

posted @ Monday, May 19, 2008 3:30 PM | Feedback (0) | Filed Under [ C# VB .NET ADO .NET & SQL ASP .NET .NET 3.0 Orcas & .NET 3.5 ]

Provare le novità di Visual Studio 2008 e .NET 3.5 Service Pack 1

Il training kit per .NET 3.5 si arricchisce di nuovi labs che consentono di sperimentare le novità introdotte dal Service Pack 1. Per maggiori informazioni e per il link al download, di circa 37 MB, fare riferimento a questo post. Technorati Tag: .NET,Programming,Visual Studio,ASP .NET,C#,VB .NET,ADO .NET

posted @ Wednesday, May 14, 2008 5:01 PM | Feedback (0) | Filed Under [ C# VB .NET ADO .NET & SQL ASP .NET Orcas & .NET 3.5 ]

Specificare il server SMTP nel file web.config

Una feature molto comoda di ASP .NET è quella che permette di definire il server SMTP da utilizzare per l'invio di mail direttamente nel file web.config: <system.net> <mailSettings> <smtp> <network host="relayServerHostname" port="portNumber" userName="username" ...

posted @ Monday, May 12, 2008 11:14 AM | Feedback (3) | Filed Under [ ASP .NET ]

Unit Testing con Visual Studio 2008

In questo post è disponibile uno screencast che illustra attraverso un esempio come si realizza lo Unit Testing di un progetto realizzato con Visual Studio 2008, utilizzando gli strumenti messi a disposizione dall'ambiente di sviluppo. Technorati Tag: .NET,Programming,Visual Studio

posted @ Thursday, May 8, 2008 11:31 AM | Feedback (0) | Filed Under [ Orcas & .NET 3.5 ]

Tre modi per recuperare il percorso della directory virtuale di un sito ASP .NET

ASP .NET fornisce almeno tre metodi per recuperare il percorso fisico della directory virtuale in cui è memorizzato un sito web (e, quindi, dei file in esso contenuti): 1 HostingEnvironment.MapPath("~/Document.xml") 2 HttpContext.Current.Server.MapPath("~/Document.xml") 3 Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Document.xml") Technorati Tag: .NET,Programming,ASP .NET

posted @ Thursday, May 8, 2008 9:35 AM | Feedback (0) | Filed Under [ ASP .NET ]

XNA Game Studio 3.0 Community Technical Preview

E' stata da poco rilasciata la prima CTP di XNA Game Studio 3.0. L'annuncio è dato in questo post, in cui è fornito anche il link per il download. Questa nuova release richiede Visual Studio 2008 oppure Visual C# 2008 Express. Il rilascio della versione finale è previsto per la fine del 2008. Technorati Tag: .NET,Programming,Tools

posted @ Wednesday, May 7, 2008 5:22 PM | Feedback (1) | Filed Under [ C# Orcas & .NET 3.5 ]

Un editor visuale per LINQ-to-SQL

In questo post viene presentato VLINQ, ovvero Visual LINQ Query Builder. Si tratta di un add-in per Visual Studio 2008 che consente di creare query per LINQ-to-SQL in maniera completamente visuale. Allo stesso indirizzo è disponibile anche un breve tutorial che introduce il suo utilizzo. VLINQ è ospitato su MSDN Code Gallery: fare clic qui per accedere alla pagina del progetto. I download disponibili comprendo anche il codice sorgente, la documentazione e uno screencast che mostra l'utilizzo pratico di questa estensione. Technorati Tag: .NET,Programming,C#,VB .NET,ASP .NET,ADO .NET,LINQ,Visual Studio,Tools

posted @ Monday, May 5, 2008 11:19 AM | Feedback (0) | Filed Under [ C# VB .NET ADO .NET & SQL ASP .NET Orcas & .NET 3.5 LINQ ]

Il garbage collector nel .NET Compact Framework

Questo post spiega in maniera semplice il funzionamento del garbage collector del .NET Compact Framework: una serie di note che chiunque programmi per la piattaforma mobile dovrebbe sempre tenere presenti. Technorati Tag: Programming,.NET Compact Framework

posted @ Tuesday, April 29, 2008 5:28 PM | Feedback (0) | Filed Under [ .NET Compact Framework ]

Logging delle applicazioni in .NET

Basta fare una piccola ricerca su Internet per trovare diversi framework di logging per .NET (vedi Log4NET, solo per citare il più famoso). Ci sono comunque situazioni in cui gli strumenti offerti da .NET sono più che sufficienti: basta utilizzare opportunamente la classe Trace e il file app.config per creare un semplice sistema di logging. Allo scopo, si deve innanzi tutto inserire una sezione come la seguente nel file di configurazione dell'applicazione: 1 <system.diagnostics> 2 <trace autoflush="true" indentsize="4"> 3 <listeners> 4 ...

posted @ Saturday, April 26, 2008 8:49 PM | Feedback (0) | Filed Under [ C# ]

Creare applicazioni certificate per Windows Vista con .NET

Questo articolo di CodeProject elenca le linee guida su come realizzare un'applicazione .NET con i requisiti necessari ad ottenere il logo "Certified for Windows Vista". E' anche fornita un'applicazione di esempio, in VB .NET, in cui sono applicati tutti questi suggerimenti. Technorati tags: Windows, .NET, Programming, VB .NET

posted @ Friday, April 25, 2008 8:42 PM | Feedback (0) | Filed Under [ C# VB .NET Windows Related .NET 3.0 Orcas & .NET 3.5 ]

Nuovo aggiornamento del Krypton Toolkit

E' stata rilasciata la nuova versione del Krypton Toolkit, la 2.8. Queste in breve le novità: New Controls/Components - KryptonDropButton - KryptonColorButton - KryptonListBox - KryptonCheckedListBox - KryptonCommand - KryptonGallery - 6 x KryptonContextMenu Elements Il download, abbastanza corposo (sono ben 22 MB), è disponibile qui. Technorati Tag: .NET,Programming,Updates,VB .NET,C#

posted @ Tuesday, April 22, 2008 9:42 AM | Feedback (1) | Filed Under [ C# VB .NET .NET 3.0 Orcas & .NET 3.5 ]

Attenzione alla lingua del riconoscimento vocale

Qualche tempo fa avevo mostrato come realizzare un sistema di riconoscimento vocale basato su grammatiche utilizzando il .NET Framework 3.0. In quell'occasione ho dimenticato di fare una precisazione importante: per impostazione predefinita, quando si crea una grammatica essa utilizza sempre la cultura del sistema operativo; nel caso in cui essa sia  diversa da quella dei motori di riconoscimento installati (ad esempio Windows XP italiano con lo Speech API 5.1 SDK), nel momento in cui si esegue il metodo SpeechRecognitionEngine.LoadGrammar, si ottiene una InvalidOperationException perché La lingua della grammatica non corrisponde alla lingua del riconoscimento vocale. Per evitare questo problema, è...

posted @ Tuesday, April 22, 2008 12:02 AM | Feedback (0) | Filed Under [ C# .NET 3.0 ]

Tutte le funzioni dell'API di Windows

Per quanto nel mondo .NET il ricorso alle API di Windows sia sempre più raro, ci sono situazioni in cui è ancora necessario utilizzarle. In casi del genere, è possibile fare riferimento a questa sezione di MSDN, in cui sono elencati le funzioni dell'API di Windows in ordine alfabetico, per categorie oppure divise per sistema operativo. Fonte: ascend slowly, breathing normally blog Technorati Tag: .NET,Programming,C#,VB .NET

posted @ Monday, April 21, 2008 10:44 AM | Feedback (0) | Filed Under [ C# VB .NET .NET 3.0 Orcas & .NET 3.5 ]

Mantenere la posizione in una pagina ASP .NET dopo il post back

Quando si esegue il post back di una pagina ASP .NET, di default il browser riporta la visualizzazione all'inizio della pagina stessa. Se si vuole che, in caso di post back, venga mantenuta la posizione precedente dello scroll, è sufficiente aggiungere l'attributo MaintainScrollPositionOnPostBack alla direttiva Page: <%@ Page Language="C#" MaintainScrollPositionOnPostBack = "true" %> Technorati Tags: .NET, Programming, ASP .NET

posted @ Sunday, April 20, 2008 3:31 PM | Feedback (3) | Filed Under [ ASP .NET ]

Ancora su .NET e l'ereditarietà multipla

Alcuni dei miei amici che programmano in C++ non capiscono il motivo per cui .NET non supporti l'ereditarietà multipla. Questo post cerca di fare un po' di chiarezza sull'argomento. Technorati Tag: .NET,Programming

posted @ Friday, April 18, 2008 10:44 AM | Feedback (1) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 Orcas & .NET 3.5 ]

Microsoft Robotics Developer Studio 2008 April CTP

Come annunciato sul blog di Arvindra Sehmi, è stata rilasciata la CTP di Aprile di Microsoft Robotics Developer Studio 2008. Il download, gratuito, è disponibile qui, mentre rimando alla fonte della notizia per maggiori informazioni. Technorati Tags: .NET, Programming

posted @ Thursday, April 10, 2008 1:56 PM | Feedback (0) | Filed Under [ Tutto & Oltre :-) Orcas & .NET 3.5 ]

Unity Application Block

Microsoft patterns & practices is excited to announce the latest addition to the p&p library of software architecture guidance: Unity Application Block April 2008 Release (1.0)    Resources ·    MSDN site: http://msdn2.microsoft.com/en-us/library/cc468366.aspx ·   Community Forum: http://codeplex.com/unity Maggiori dettagli sono disponibili qui. Technorati Tags: .NET, Programming

posted @ Monday, April 7, 2008 11:35 AM | Feedback (0) | Filed Under [ C# VB .NET ASP .NET .NET 3.0 Orcas & .NET 3.5 ]

Video su ASP .NET MVC Framework

A questo indirizzo sono disponibili alcuni video introduttivi sull'utilizzo dell'MVC Framework per ASP .NET. Gli esempi di codice mostrati sono in Visual Basic .NET. Fonte: Beth Massi - Sharing the goodness that is VB Technorati Tags: .NET, ASP .NET, VB .NET, Programming

posted @ Wednesday, April 2, 2008 11:10 AM | Feedback (0) | Filed Under [ VB .NET ASP .NET ]

Nuovi virtual lab su Windows Server 2008

A questo indirizzo sono disponibili tre nuovi virtual lab su Windows Server 2008, dedicati agli sviluppatori; il primo riguarda IIS, mentre gli altri due trattano di PowerShell. Fonte: MSDN Online Media Blog Technorati Tags: Windows, Programming

posted @ Friday, March 28, 2008 9:55 AM | Feedback (0) | Filed Under [ Windows Related ]

Realizzare un'applicazione Web con ASP .NET MVC passo dopo passo

Premetto che fino ad oggi non ho avuto modo di provare il Framework MVC per ASP .NET. Su MSDN Magazine di Marzo 2008 è disponibile un articolo che spiega come realizzare passo dopo passo un'applicazione Web sfruttando questo pattern. Gli ho dato una lettura veloce, ma credo che sia un buon punto di partenza per addentrarsi nell'argomento. Technorati tags: .NET, Programming, ASP .NET

posted @ Monday, March 24, 2008 8:15 PM | Feedback (0) | Filed Under [ ASP .NET Orcas & .NET 3.5 ]

I programmatori e la memoria (dei computer)

A questo indirizzo è disponibile un post dall'emblematico titolo What Every Programmer Should Know About Memory. Esso contiene i link alle varie parti di un articolo di ben 100 pagine che fornisce una panoramica abbastanza estesa del funzionamento della memoria di un calcolatore e di come i programmatori dovrebbero usarla. Come precisato, l'articolo fa esplicito riferimento ai sistemi Unix, infatti gli esempi di codice presentati sono in C, tuttavia gli argomenti trattati hanno validità generale. Technorati Tags: .NET, Programming, Hardware

posted @ Friday, March 21, 2008 9:35 AM | Feedback (1) | Filed Under [ Tutto & Oltre :-) ]

February 2008 CTP per i Windows Live Tools per Visual Studio 2008

Completando l'annuncio di ieri, quest'oggi è stata rilasciata la CTP di Febbraio 2008 dei Windows Live Tools per Visual Studio 2008. Tutti i dettagli sono disponibili, ancora una volta, sul blog di Pietro Brambati. Technorati Tags: .NET, Programming, Updates, Visual Studio

posted @ Thursday, March 20, 2008 3:11 PM | Feedback (0) | Filed Under [ ASP .NET Orcas & .NET 3.5 Updates & Service Pack ]

Windows Live Messenger Library

Pietro Brambati ci annuncia la disponibilità della beta di Windows Live Messenger Library, un'API che consente di integrare le funzionalità di Messenger nel proprio sito web. Nel post è anche mostrato un semplice esempio di utilizzo. Technorati Tags: Programming, Live

posted @ Wednesday, March 19, 2008 3:10 PM | Feedback (1) | Filed Under [ Tutto & Oltre :-) ]

Motion Detection in C#

Mentre stavo cercando una libreria .NET con funzionalità grafiche, sono incappato in un link ad un progetto di CodeProject chiamato Motion Detection Algorithms. Esso mostra come realizzare un'applicazione C# in grado di rilevare il movimento in uno stream continuo. Per un attimo, mi sono venute in mente alcune utility carine che si potrebbero realizzare... Magari ve ne parlerò in uno dei prossimi post . Technorati Tags: .NET, Programming, C#

posted @ Monday, March 17, 2008 3:06 PM | Feedback (1) | Filed Under [ C# ]

SqlDependency: come essere notificati sulle modifiche ad un database

.NET offre un oggetto chiamato SqlDependency che consente di ottenere notifiche per ogni modifica effettuata su un database di SQL Server 2005. Il suo utilizzo è relativamente semplice, ma richiede qualche accortezza nella configurazione del database e nella scrittura delle query, come spiegato in questo post. Technorati Tags: .NET, Programming, SQL, SQL Server

posted @ Monday, March 17, 2008 11:11 AM | Feedback (0) | Filed Under [ ADO .NET & SQL SQL Server ]

Supporto a Visual Basic 6.0 per Windows Server 2008

Come si legge qui, il runtime di Visual Basic 6.0 è ufficialmente supportato anche da Windows Server 2008. Inoltre, sono stati test approfonditi per assicurare la compatibilità sia con Windows Server 2008 sia con Windows Vista di numerosi controlli ActiveX utilizzati dalle applicazioni VB, come RICHTX32.OCX e COMCTL32.OCX. Tutto questo, nelle intenzioni di Microsoft, è stato fatto con lo scopo di consentire una transazione il più possibile indolore dalle attuali applicazioni realizzate in Visual Basic 6 alle nuovi versioni basate su Visual Basic .NET. Technorati Tags: .NET, Programming, VB .NET, Windows

posted @ Sunday, March 16, 2008 11:16 AM | Feedback (2) | Filed Under [ VB .NET Windows Related ]

[70-549] Errata corrige #3, un altro copia/incolla di troppo?

Ancora il quick-check a pagina 212 del Self-Paced Training Kit per l'esame 70-549... La domanda 2 chiede quali modificatori possono essere utilizzati per specificare il tipo di ereditarietà supportato da una classe base. La risposta è completamente sbagliata. Innanzi tutto, si parla di NotOverridable/sealed e MustOverride/abstract. I modificatori C# sono corretti, mentre quelli che, secondo il testo, si possono applicare alla dichiarazione di una classe VB .NET, in realtà sono utilizzati per metodi e proprietà; nel caso di classi, invece, i modificatori corretti sono, rispettivamente, NotInheritable e MustInherit. Penso che l'errore sia dovuto al fatto che in C# si utilizzano sealed...

posted @ Thursday, March 13, 2008 9:00 PM | Feedback (0) | Filed Under [ C# VB .NET Certificazioni ]

Visual Studio 2005 Team System Database Professional Post Service Release 1 Rollup Package 1

Un nome lunghissimo per un aggiornamento di 9,45 MB, disponibile qui. In questo articolo della Knowldge Base sono elencate tutte le correzioni effettuate. Fonte: Developer hearted / Relational minded blog Technorati Tag: .NET,Programming,Visual Studio,Updates

posted @ Wednesday, March 12, 2008 5:29 PM | Feedback (0) | Filed Under [ C# VB .NET ADO .NET & SQL ASP .NET Updates & Service Pack ]

Presto Java sull'iPhone

Stando a quanto annunciato qui, Sun è al lavoro per realizzare una virtual machine Java destinata all'iPhone e basata sulla Micro Edition del linguaggio. Il rilascio è previsto dopo giugno. Technorati Tag: Programming

posted @ Monday, March 10, 2008 2:35 PM | Feedback (1) | Filed Under [ Tutto & Oltre :-) ]

[70-549] Errata corrige #1

Ecco un errore del Self-Paced Training Kit per l'esame 70-549... Il quick-check a pagina 212 chiede, tra le altre cose, quali modificatori possono essere specificati su proprietà, metodi e classi per consentire l'overriding. Nella risposta sono correttamente elencati Overridable/virtual e Overrides/ovveride. Tuttavia, nel capitolo non si fa alcuna menzone di tali modificatori, e il quick-check dovrebbe essere un modo per verificare velocemente se gli argomenti trattati nella pagine precedenti sono stati compresi... Come si fa a comprendere qualcosa di cui non si parla? Technorati Tag: Certification,.NET,Programming,C#,VB .NET

posted @ Sunday, March 9, 2008 1:54 PM | Feedback (0) | Filed Under [ C# VB .NET Certificazioni ]

[70-549] Componenti vs Servizi

Come ho già avuto modo di dire, il Self-Paced Training Kit per l'esame 70-549 è fatto complessivamente abbastanza bene, soprattutto se paragonato agli altri libri Microsoft su cui ho studiato. Qualche imprecisione comunque c'è. Ad esempio, a pagina 261 si parla dei vantaggi/svantaggi dei servizi rispetto ai componenti. Più precisamente, si parla di Web service e Remoting. Nel testo, si dice che uno dei vantaggi derivanti dall'utilizzo dei Web service è il disaccoppiamento dall'implementazione effettiva del servizio: fino a che il relativo WDSL rimane lo stesso, il Web service può essere modificato senza che il client ne risenta. Da come...

posted @ Thursday, March 6, 2008 5:11 PM | Feedback (0) | Filed Under [ Certificazioni ]

Questo messaggio di errore mi mancava...

Questa mattina ho ottenuto per la prima volta un errore dovuta ad una ContextSwitchDeadlock, la cui descrizione è illuminate: The CLR has been unable to transition from COM context 0x1a4008 to COM context 0x1a4178 for 60 seconds. The thread that owns the destination context/apartment is most likely either doing a non pumping wait or processing a very long running operation without pumping Windows messages. This situation generally has a negative performance impact and may even lead to the application becoming non responsive or memory usage accumulating continually over time. To avoid this problem, all single threaded...

posted @ Wednesday, March 5, 2008 4:58 PM | Feedback (0) | Filed Under [ Tutto & Oltre :-) ]

Dietro le quinte delle proprietà automatiche di Visual Studio 2008

Tempo fa avevo già parlato della sintassi abbreviata per la definizione delle proprietà in C# con Visual Studio 2008. Oggi ho provato ad utilizzare Reflector per vedere il codice che di fatto viene generato a tempo di compilazione quando si utilizza questa feature. Partendo dalla seguente classe:   public class TestClass { public int MyProperty { get; set; } } Quello che si ottiene è:   public class TestClass { // Fields [CompilerGenerated] private int <MyProperty>k__BackingField; // Properties public int MyProperty { ...

posted @ Tuesday, March 4, 2008 10:40 AM | Feedback (0) | Filed Under [ C# Orcas & .NET 3.5 ]

Parallel Extensions for .NET Framework 3.5

L'annuncio non è proprio recente, ma solo in questi giorni ho avuto la possibilità di sperimentare questa nuova libreria. Devo ammettere che mi sono divertito nel ritrovare alcuni concetti che avevo studiato nel corso di Architettura parallele e distribuite... A questo indirizzo è possibile scaricare la CTP di Dicembre 2007 delle Parallel Extensions for .NET Framework 3.5, mentre su MSDN Magazine di Ottobre 2007 sono disponibili due articoli che trattano l'ottimizzazione del codice per le architetture multi-core e l'esecuzione parallela di query con LINQ (il cosiddetto PLINQ). Technorati Tag: .NET,Programming,LINQ

posted @ Monday, March 3, 2008 4:53 PM | Feedback (0) | Filed Under [ Orcas & .NET 3.5 LINQ ]

Giocare a Tetris con VB .NET

Alzi la mano chi non ha giocato almeno una volta a Tetris... Credo sia uno dei giochi più longevi della storia; personalmente, è stato il primo gioco che ho installato sul mio smartphone e, ancora adesso, durante le mie 2 ore al giorno (ahimè...) passate sul treno, mi capita di farci qualche partitina.  Su CodeProject, a questo indirizzo, è disponibile una versione del gioco realizzata in Visual Basic .NET. Technorati Tag: .NET,Programming,VB .NET

posted @ Tuesday, February 26, 2008 3:09 PM | Feedback (0) | Filed Under [ VB .NET ]

Gli errori da non commettere quando si progetta un'interfaccia utente

Application usability is enhanced when users know how to operate the UI and it guides them through the workflow. Violating common guidelines prevents both [...] Usually, applications fail because they (a) solve the wrong problem, (b) have the wrong features for the right problem, or (c) make the right features too complicated for users to understand. Chi progetta interfacce grafiche dovrebbe leggere questo articolo almeno una volta Technorati Tag: Programming

posted @ Thursday, February 21, 2008 5:19 PM | Feedback (0) | Filed Under [ Tutto & Oltre :-) ]

.NET 3.5 Client Product Roadmap

Il mitico Scott Guthrie ci presenta in questo post la roadmap per le nuove funzionalità relative allo sviluppo di applicazioni client basate su .NET. Le migliorie riguarderanno i seguenti aspetti: Improved .NET Framework Setup for Client Applications Improved Working Set and Startup Improvements for .NET Client Applications WPF Performance Improvements WPF Control Improvements VS 2008 WPF Designer Improvements E' bene ricordare che queste aree di intervento sono state identificate sulla base dei feedback degli utenti. Technorati Tag: .NET,Visual Studio,Programming

posted @ Wednesday, February 20, 2008 12:41 PM | Feedback (1) | Filed Under [ Orcas & .NET 3.5 ]

Un aggiornamento per Visual Basic 6

Microsoft ha recentemente rilasciato un Security Update per Visual Basic 6 Service Pack 6. L'aggiornamento risolve una vulnerabilità presente nel file OLEAUT32.DLL. Il disponibile è disponibile qui, mentre è possibile fare riferimento a questa pagina per maggiori informazioni sul problema. Technorati Tag: Programming

posted @ Wednesday, February 13, 2008 10:04 AM | Feedback (0) | Filed Under [ Tutto & Oltre :-) ]

SharpUpnp 1.0 rilasciato

Come promesso, pochi minuti fa ho rilasciato su CodePlex la versione 1.0 di SharpUpnp. Nella sezione Release potete trovare la libreria, la documentazione e tutti i sorgenti del progetto. Fino adesso ho ricevuto diversi feedback positivi, quindi mi piacerebbe provare a pubblicizzare maggiormente la libreria... Mi date qualche idea su come fare? Technorati Tags: .NET, Programming, C#, CodePlex

posted @ Wednesday, February 6, 2008 11:14 PM | Feedback (10) | Filed Under [ C# CodePlex ]

Ridefinire i metodi statici

Questo è il titolo, volutamente provocatorio, di un post pubblicato sul blog di Kirill Osenkov. Le cose dette non sono niente di nuovo, ma è comunque utile avere a disposizione una piccola reference su questo argomento. Technorati Tags: .NET, Programming, C#

posted @ Wednesday, February 6, 2008 12:51 PM | Feedback (1) | Filed Under [ C# ]

A breve la release 1.0 di SharpUpnp

Finalmente ho trovato il tempo per terminare la versione 1.0 di SharpUpnp. Ancora qualche giorno per scrivere la documentazione e il rilascio è pronto! Stay tuned, miei cari 25 lettori... Technorati Tags: .NET, Programming, C#, CodePlex

posted @ Tuesday, February 5, 2008 5:35 PM | Feedback (2) | Filed Under [ C# CodePlex ]

MSDN Code Gallery

A questo indirizzo è possibile raggiungere la nuova MSDN Code Gallery, una grande raccolta di esempi di codice e documentazione tecnica dedicata a .NET, a cui chiunque può contribuire inviando nuove risorse. Lo stile e l'interfaccia grafica del portale ricalcano molto da vicino quelli di CodePlex. Technorati tags: .NET, Programming, C#, VB .NET, ASP .NET, ADO .NET, .NET Compact Framework, .NET Micro Framework, LINQ, Silverlight

posted @ Thursday, January 31, 2008 1:57 PM | Feedback (0) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 .NET Micro Framework Orcas & .NET 3.5 Silverlight ]

[70-529] Tutti gli errata corrige mancanti (e non solo)

La lista iniziava a diventare preoccupantemente lunga, quindi riassumo in un unico articolo tutti gli errata corrige e le imprecisioni del Self-Paced Training Kit per l'esame 70-529 che ancora non ho segnalato. La spiegazione del routing con WSE, argomento della lezione 2 del capitolo 11, è molto lacunosa... Prima dice come si crea un router WSE andando ad estendere la classe HttpSoapRouter e aggiungendo un httpHandler per i file *.asmx, poi presenta la referral cache come oggetto obbligatorio per il routing. Sembra quasi che entrambe le cose siano necessarie. In realtà, il routing dei messaggi SOAP può essere...

posted @ Tuesday, January 29, 2008 11:48 AM | Feedback (0) | Filed Under [ Certificazioni ]

Come creare il proprio compilatore per il .NET Framework

MSDN Magazine di Febbraio 2008 contiene un interessantissimo articolo che spiega come creare lo scheletro di un compilatore per un nuovo linguaggio basato sul .NET Framework. Io l'ho già stampato e mi appresto a leggerlo  Technorati tags: .NET, Programming

posted @ Tuesday, January 29, 2008 9:28 AM | Feedback (0) | Filed Under [ Orcas & .NET 3.5 ]

Un nuovo modo per proteggere le applicazioni .NET

In questo post Alessandro Del Sole ci segnala un articolo, scritto dal grande Francesco Balena, che illustra una nuova tecnica per progettere gli assembly .NET dalla decompilazione, senza utilizzare strumenti di terze parti. Io l'ho letto tutto d'un fiato e non vedo l'ora di fare qualche esperimento Grazie Alessandro, grazie Francesco! Technorati Tags: .NET, Programming

posted @ Tuesday, January 15, 2008 9:25 AM | Feedback (0) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 .NET Micro Framework Orcas & .NET 3.5 ]

[70-529] Errata corrige #12

A pagina 307 del Self-Paced Training Kit per l'esame 70-529 si dice che, nel codice di esempio, rispetto alla versione mostrata in precedenza, è stata aggiunto l'import del namespace System.Runtime.Remoting.Messaging. In realtà, non c'è traccia di questa dichiarazione... Con il risultato che il codice non compila perché l'attributo OneWay è definito proprio in tale namespace. Technorati Tags: Certification, .NET, Programming

posted @ Monday, January 14, 2008 3:18 PM | Feedback (0) | Filed Under [ Certificazioni ]

Un tip molto interessante... Almeno per me :-)

Nell'editor di Visual Basic 2008, mentre è visualizzato il menu dell'IntelliSense, è possibile premere il tasto CTRL per rendere la lista trasparente e visualizzare il codice sottostante. Il tip è pubblicato qui, ma non è chiaro se è valido anche per C# (purtroppo nella macchina da cui sto scrivendo non ho VS2008, quindi non posso provare). Technorati Tags: Programming, Visual Studio, VB .NET

posted @ Wednesday, January 9, 2008 4:11 PM | Feedback (4) | Filed Under [ VB .NET Orcas & .NET 3.5 ]

Ruby In Steel

A questo indirizzo è disponibile Ruby In Steel Text Edition, un ambiente di sviluppo per Ruby on Rails che sfrutta le potenzialità di Visual Studio 2008 Shell. Dal sito del produttore è possibile scaricarne una versione di prova valida per 30 giorni. Ruby In Steel Text Edition ha un costo di 49 dollari. Technorati Tags: Programming, Visual Studio

posted @ Wednesday, January 9, 2008 12:44 PM | Feedback (0) | Filed Under [ Orcas & .NET 3.5 ]

Lavori in corso per l'Enterprise Library 4.0

Come si può leggere in questo post, da qualche tempo è cominciato lo sviluppo della Enterprise Library 4.0. In particolare, in questa pagina è disponibile l'EntLib V4 Product Backlog, in cui sono annunciate le principali novità previste per la nuova versione, a cominciare dal pieno supporto per Visual Studio 2008. Technorati Tags: .NET, Programming, Tools, Updates, Visual Studio

posted @ Wednesday, January 9, 2008 9:30 AM | Feedback (0) | Filed Under [ C# VB .NET ADO .NET & SQL ASP .NET .NET 3.0 Orcas & .NET 3.5 Updates & Service Pack ]

[70-529] La trattazione del Remoting è piena di lacune e imprecisioni...

Come ho già accennato più volte, la trattazione del Remoting nel Self-Paced Training Kit per l'esame 70-529 è ben lungi dall'essere completa e, soprattutto, corretta... Ad esempio, nella lezione 3 del capitolo 5, "How To Access Remote Method", non dice da nessuna parte che il metodo Activator.GetObject funziona solo con oggetti well-known (ovvero Server-Activated). Infatti, provando ad utilizzarlo con oggetti Client-Activated, si ottiene una RemotingException accompagnata dal messaggio "Requested Service not found". In questo caso, si deve invece usare Activator.CreateInstance, come mostrato qui: http://msdn2.microsoft.com/en-us/library/0x5kd2ah.aspx. Technorati Tags: .NET, Programming, Certification

posted @ Tuesday, January 8, 2008 3:00 PM | Feedback (1) | Filed Under [ Certificazioni ]

Un problema senza soluzione

Tempo fa avevo postato sul newsgroup microsoft.public.it.dotnet.asp una domanda relativa ad uno strano comportamento del metodo GridView.Sort, se eseguito nella routine Page_Load di una pagina ASP .NET. Non ho mai ricevuto risposta, ma sono riuscito comunque ad aggirare il problema. Ad ogni modo, il dubbio mi è rimasto, quindi voglio fare un ultimo tentativo, esponendo il problema sul blog di UGIdotNET. La situazione è questa: Ho una GridView collegata ad un ObjectDataSource. Nella GridView ho specificato la proprietà DataKeyNames. Se richiamo il metodo GridView.Sort nell'evento Load della pagina, la collezione GridView.DataKeys viene "svuotata", nel senso che, provando a leggerla da codice, essa...

posted @ Tuesday, January 8, 2008 10:07 AM | Feedback (1) | Filed Under [ ASP .NET ]

[70-529] Errata corrige #9

Gli esempi di codice a pagina 144 del Self-Paced Training Kit per l'esame 70-529 sono sbagliati. In questa pagina, infatti, è mostrato l'utilizzo degli operatori GetType in VB .NET e typeof in C# come se essi accettassero, come secondo parametro, un'espressione nella forma Version=1.0.0.0, con cui si può specificare la versione dell'oggetto di cui recuperare il tipo, nel caso in cui ne siano disponibili più di una. In realtà, come si può leggere su MSDN, entrambi gli operatori accettano un solo argomento che raprresenta il tipo con cui si vuole lavorare. Technorati Tags: Certification, .NET, Programming

posted @ Monday, January 7, 2008 2:04 PM | Feedback (0) | Filed Under [ C# VB .NET Certificazioni ]

Applicazioni Peer-to-Peer in .NET 3.5

Contrordine... Mi lascio un appunto qui, così l'anno nuovo so già a cosa dovrò lavorare . Mi sto riferendo ai nuovi oggetti forniti dal .NET Framework 3.5 per la gestione di applicazioni Peer-to-Peer: in particolare, PeerName, PeerNameRegistration e PeerNameResolver, contenuti nel namespace System.Net.PeerToPeer. Grazie ad essi, realizzare applicazioni Peer-to-Peer è di una semplicità sconcertante. Ad esempio, il seguente codice pubblica un nuovo peer: 1 // Creates a secured PeerName. 2 PeerName peerName = new PeerName("MyPeerNode", PeerNameType.Secured); 3 4 PeerNameRegistration pnReg = new PeerNameRegistration(peerName, 4567, Cloud.Global); 5 pnReg.UseAutoEndPointSelection = true; 6 pnReg.Comment = "up to 39 unicode char comment"; 7 pnReg.Data...

posted @ Sunday, December 30, 2007 10:33 AM | Feedback (2) | Filed Under [ C# Orcas & .NET 3.5 ]

Effettuare il Join di due DataTable

Qualche giorno fa ho avuto la necessità di effettuare il join di due DataTable, risultato di interrogazioni su due database differenti, per produrre un unico DataTable da mostrare in un controllo DataGridView. Le due tabelle dovevano essere unite sulla base di un campo ID, secondo l'usuale relazione di chiave-chiave esterna. Mi sono così definito una procedura per eseguire l'operazione: private void Join(DataTable mainTable, string mainRowField, string parentRowField, DataRelation relation) { //Controlla se la tabella contiene la colonna in cui aggiungere i risultati del join. if (!mainTable.Columns.Contains(mainRowField)) mainTable.Columns.Add(mainRowField); ...

posted @ Saturday, December 29, 2007 4:02 PM | Feedback (1) | Filed Under [ C# ADO .NET & SQL ]

Determinare quando è disponibile una connessione a Internet

Ormai sono lanciato nella realizzazione di classi di supporto per la gestione della rete. Dopo NetworkChange2, oggi è la volta di una classe che consente di sapere se il PC è collegato a Internet oppure no, nonché di ricevere notifiche se lo stato della connessione cambia: 1 using System; 2 using System.ComponentModel; 3 using System.Threading; 4 using System.Net; 5 6 namespace System.Net.NetworkInformation 7 { 8 public delegate void InternetAvailabilityChangedEventHandler(object sender, InternetAvailabilityEventArgs e); 9 10 public static...

posted @ Saturday, December 29, 2007 2:31 PM | Feedback (0) | Filed Under [ C# ]

Signori e signore... Vi presento SharpUPnP!

Finalmente, durante queste vacanze di Natale, ho trovato del tempo da dedicare ad un progetto che mi rimbalzava in testa già da un po'... Ovvero una liberia che fornisse funzionalità UPnP alle applicazioni .NET. In giro avevo già trovato qualcosa del genere, ma niente che rispondesse in pieno alle mie esigenze. In particolare, quello di cui avevo bisogno erano dei metodi per realizzare sistemi di NAT traversal  (che dovrebbero essere alla base di un'altra applicazione che sto progettando... Ma questa è un'altra storia ). E' così nato il progetto SharpUPnP, che nei giorni scorsi ho pubblicato su CodePlex. Al momento è...

posted @ Friday, December 28, 2007 11:18 AM | Feedback (0) | Filed Under [ C# Orcas & .NET 3.5 CodePlex ]

Sapere quando è disponibile una connessione di rete

Il .NET Framework 2.0 offre due classi che consentono di sapere se una connessione di rete è disponibile e di ricevere notifiche quando lo stato della connessione cambia: si tratta rispettivamente di NetworkInterface e NetworkChange, entrambe contenute nel namespace System.Net.NetworkInformation. In particolare, NetworkChange è una classe statica che espone un metoodo di nome NetworkAvailabilityChanged, che viene generato quando lo stato della connessione cambia da non disponibile a disponibile, e viceversa. Il problema di questa classe (se così si può chiamare) è che l'evento NetworkAvailabilityChanged viene generato in un thread secondario, quindi se si cerca di aggiornare l'interfaccia utente nell'handler di...

posted @ Thursday, December 27, 2007 12:39 AM | Feedback (1) | Filed Under [ C# ]

MSDN Magazine di Gennaio 2008

Neanche la vacanze di Natale fermano gli autori di MSDN Magazine: da pochi giorni è disponibile online l'edizione di Gennaio 2008. Anche questo numero ha un chiaro orientamento verso lo sviluppo Web (a me è subito caduto l'occhio sull'articolo Drag and Drop with ASP.NET AJAX). Fate clic qui per accedere all'edizione inglese, oppure qui per quella italiana. Technorati tags: .NET, Programming, CS, VB .NET, ASP .NET, AJAX, Silverlight

posted @ Wednesday, December 26, 2007 12:04 PM | Feedback (0) | Filed Under [ C# VB .NET .NET Compact Framework ADO .NET & SQL ASP .NET .NET 3.0 Orcas & .NET 3.5 ]

Nuova versione di Vista Controls for .NET 2.0

Per chi non lo conoscesse, il mio progeto Vista Controls for .NET 2.0, avviato su CodePlex poco meno di un annetto fa, ha come obiettvo quello di realizzare una serie di controlli per Windows Forms che riproducono il look and feel dei nuovi oggetti dell'interfaccia grafica di Windows Vista, come i pulsanti con l'icona dello scudo, le caselle di testo con il cosiddetto cue banner, ecc. Recentemente, grazie al contributo di Lorenz Cuno Klopfenstein, la libreria è giunta alla versione 1.2, in cui, tra le altre cose, sono state aggiunte una nuova classe per il compositing DWM e gli effetti...

posted @ Sunday, December 23, 2007 3:00 PM | Feedback (0) | Filed Under [ C# CodePlex ]

DataObject, DataObjectMethod e DataObjectField

Negli ultimi giorni ho utilizzato il wizard per la creazione di un ObjectDataSource. Nella prima schermata, dove vengono mostrati gli oggetti che si possono utilizzare come sorgente, c'è una casella di nome Show only data components, di cui ignoravo il significato. Questa mattina, mentre cercavo tutt'altro, ho capito a cosa serve: si tratta di una funzione che ha che fare con gli attributi DataObject, DataObjectMethod e DataObjectField. Questi sono una sorta di "aiuti" per il wizard: grazie ad essi, infatti, la procedura guidata è in grado di proporre automaticamente le scelte più corrette per la definizione dell'ObjectDataSource. Mi spiego meglio....

posted @ Thursday, December 20, 2007 10:15 PM | Feedback (0) | Filed Under [ C# ADO .NET & SQL ASP .NET ]

[70-529] Errata corrige #8

Come avevo anticipato, la parta relativa al remoting nel Self-Paced Training Kit per l'esame 70-529 è piena di errori e imprecisioni. A pagina 204 è presentato un esempio di configurazione di un client, tramite file di configurazione, per l'utilizzo di un oggetto remoting di tipo Client-Activated. La sintassi mostrata, tuttavia, è sbagliata. Il tag <client>, infatti, deve contenere anche l'url da cui prelevare l'oggetto, come chiaramente spiegato qui: The <client> element must have a url attribute specified if there is an <activated> element specified, or an exception will be thrown. Technorati tags: Certification, .NET, Programming

posted @ Thursday, December 20, 2007 2:09 PM | Feedback (0) | Filed Under [ Certificazioni ]

Inserire un valore null in un campo datetime di SQL Server

L'applicazione che sto sviluppando recupera una serie di informazioni da una base di dati, comprese alcune date. Poiché i campi datetime nel database ammettono il valore null, per manipolare le date utilizzo il tipo Nullable<DateTime>, grazie al quale riesco facilmente a capire se nessuna data è stata specificata nella base di dati. Questo sistema ha però un problema. Supponiamo di dover aggiornare un campo datetime, inserendo al suo interno il valore null. Se io creo un oggetto SqlParameter di tipo SqlDbType.DateTime (con il parametro chiamato @dataScandenza) e imposto la sua proprietà Value su null, andando ad eseguire il metodo SqlCommand.ExecuteNonQuery...

posted @ Saturday, December 15, 2007 12:31 PM | Feedback (5) | Filed Under [ C# ADO .NET & SQL SQL Server ]

LiveNet Wrapper for Windows Live Developing

Su CodePlex, a questo indirizzo, è disponibile un wrapper realizzato in .NET che facilita l'utilizzo dei Windows Live Tools nelle proprie applicazioni Web. Attualmente sono supportate solo le Live Photos API. Tutti i dettagli dell'annuncio sono disponibili in questo post. Technorati Tags: .NET, Programming, ASP .NET, Live

posted @ Friday, December 14, 2007 9:28 AM | Feedback (0) | Filed Under [ ASP .NET ]

Un correttore ortografico per Visual Studio

Mikhail Arkhipov ha realizzato un add-in per Visual Studio 2005/2008 che aggiunge un correttore ortografico all'editor dell'ambiente di sviluppo. Il tool supporta i linguaggi HTML, ASP.NET, JScript, VB, C#, CSS and C++ ed è in grado di segnalare gli errori presenti nei commenti, scritti in uno qualunque dei seguenti formati: HTML style comments <-- HTML --> ASP.NET server side comments: <%-- ASP.NET --%> JScript, C# and C++ comments: // C++ style comments CSS and C style comments: /* C style comments */ ...

posted @ Thursday, December 13, 2007 11:52 AM | Feedback (1) | Filed Under [ C# VB .NET .NET Compact Framework ASP .NET .NET 3.0 Orcas & .NET 3.5 ]

[70-529] Errata corrige #4

Gli esempi di codice C# alle pagine 61-62 del Selft-Paced Training Kit per l'esame 70-529 sono sbagliati. In particolare, a pagina 61 in alto la riga di codice MyWebService wsHeader = new MyWebService.VendorHeader(); Dovrebbe essere MyWebService.VendorHeader wsHeader = new MyWebService.VendorHeader(); Poi, a pagina 62, nel secondo esempio di codice C# mancano le parentesi quadre nella definizione della variabile unknownHeader, dal momento che si tratta di un array di oggetti di tipo SoapUnknownHeader. E' interessante notare che, in entrambi i casi, il corrispondente esempio in VB .NET è corretto. Che si tratti di discriminazione? Technorati Tags: Certification, Programming, .NET, CS

posted @ Wednesday, December 12, 2007 4:19 PM | Feedback (1) | Filed Under [ Certificazioni ]

Windows Live Spaces Photo API

Direttamente da MSDN: The Windows Live Spaces Photo API allows Web sites to view and update Windows Live Spaces photo albums using the WebDAV protocol. Web sites can incorporate the following functionality: Upload or download photos. Create, edit, or delete photo albums. Request a list of a user's albums, photos, or comments. Edit or delete content for an existing entry. Query the content in an existing entry. Al momento l'API è ancora in versione Alpha, ma la documentazione sembra comunque molto completa. Technorati...

posted @ Wednesday, December 12, 2007 12:51 PM | Feedback (0) | Filed Under [ Windows Related ]

[70-529] Errata corrige #3

Questo non è propriamente un errata corrige, quanto piuttosto una spiegazione secondo me non ottimale. A pagina 137 del Self-Paced Training Kit per l'esame 70-529 si dice di utilizzare la scheda Browse della finestra di dialogo Add Reference per aggiungere il riferimento di una class library al progetto (punto 9). Sebbene la spiegazione sia giusta, dal momento che il riferimento in questione è relativo ad una class library che fa parte della stessa soluzione, è più corretto utilizzare la scheda Projects, in modo da inserire un riferimento che punta al progetto stesso: così facendo, eventuali modifiche alla class library saranno...

posted @ Tuesday, December 11, 2007 1:53 PM | Feedback (0) | Filed Under [ Certificazioni ]

Un interessante documento su XAML

A questo indirizzo è disponibile un file PDF che in 32 pagine fornisce una buona introduzione al linguaggio XAML e a come ha rivoluzionato (e rivoluzionerà sempre di più) lo sviluppo di interfacce grafiche. Devo ammettere che, fino adesso, non ho fatto praticamente nessuna esperinza con Windows Presentation Foundation, quindi questa potrebbe essere una buona idea per iniziare Technorati Tag: .NET, Programming

posted @ Tuesday, December 11, 2007 10:08 AM | Feedback (0) | Filed Under [ .NET 3.0 ]

Utilizzare gli extension methods anche con .NET 2.0

Il post di ieri di Daniele Mantovani mi ha fatto nascere un dubbio: dal momento che il Common Language Runtime del .NET Framework 3.5 è lo stesso della versione precedente e che gli extension methods sono semplicemente "zucchero sintattico", c'è un modo per utilizzarli anche con i progetti indirizzati a .NET 2.0? La risposta è... sì, è possibile! Vediamo come fare. Creiamo un progetto .NET 2.0 con Visual Studio 2008 e definiamo la seguente classe: 1 using System; 2 using System.Text; 3 4 namespace ExtensionMethods 5 { 6 public static class Utils 7 ...

posted @ Sunday, December 9, 2007 11:57 AM | Feedback (7) | Filed Under [ C# Orcas & .NET 3.5 ]

Visualizzare una DropDownList all'interno di un controllo DetailsView in EditMode

Ultimamente, una delle cose che ho dovuto fare più spesso è stato realizzare delle pagine ASP .NET per la modifica di informazioni contenute in un database. Mi sono quindi servito del controllo DetailsView di .NET, sfruttando le sue capacità di visualizzazione e modifica dei dati. Proprio oggi avevo bisogno che un certo campo, visualizzato in modalità di editing, mostrasse una DropDownList, per limitare la scelta dei possibili valori. Memore del recente esame di certificazione, mi ricordavo che la cosa è possibile utilizzando un TemplateField, ma non ero sicuro di intraprendere la strada corretta. Ho così fatto una veloce ricerca su Google...

posted @ Friday, December 7, 2007 10:10 AM | Feedback (0) | Filed Under [ ASP .NET ]

[70-529] Ufficio complicazioni affari semplici

A pagina 50 e seguenti del Self-Paced Training Kit per l'esame 70-529 si parla di come utilizzare le classi del namespace System.Xml.Serialization per modificare il modo in cui un oggetto viene serializzato in formato XML. Viene spiegato, ad esempio, come cambiare il nome di un campo. Per esemplificare i concetti si utilizza la seguente classe: public class Vendor { public int VendorID; public string AccountNumber; public string Name; } Nel testo vengono mostrati i passaggi necessari per fare in modo che il campo AccountNumber di un oggetto Vendor serializzato in XML venga automaticamente...

posted @ Thursday, December 6, 2007 11:09 PM | Feedback (0) | Filed Under [ C# Certificazioni ]

A breve XNA Game Studio 2.0 versione finale

Come si può leggere qui, domani sarà l'ultimo giorno in cui è possibile scaricare XNA Game Studio 2.0 Beta, dopodiché la fase di beta testing si chiuderà in attesa del rilascio della versione finale, che è prevista a breve... Technorati Tags: Programming

posted @ Thursday, December 6, 2007 5:09 PM | Feedback (0) | Filed Under [ Tutto & Oltre :-) ]

Una serie di Rich Text Box per ASP .NET

A questo indirizzo sono disponibili i link a tre controlli ASP .NET che riproducono le funzionalità di una Rich Text Box per pagine web: FreeTextBox FCKEditor TinyMCE Tutti e tre sono gratuiti, gli ultimi due anche open source. Technorati Tags: .NET, Programming, ASP .NET

posted @ Wednesday, December 5, 2007 4:36 PM | Feedback (2) | Filed Under [ ASP .NET ]

[70-529] Come utilizzare la classe CookieContainer

Alle pagine 96-98 del Self-Paced Training Kit per l'esame 70-529 si parla dei Cookie e della classe CookieContainer per gestire lo stato di un Web service. Ma questa parte del libro in pratica non spiega assolutamente niente del loro effettivo utilizzo... I dettagli su come funzionano sono contenuti in questo articolo della Knowledge Base: http://support.microsoft.com/kb/816637/en-us. Technorati Tag: Certification, Programming, ASP .NET

posted @ Monday, December 3, 2007 4:58 PM | Feedback (0) | Filed Under [ ASP .NET Certificazioni ]

[70-529] Errata corrige #2

L'esempio di codice in alto a pagina 20 del Self-Paced Training Kit per l'esame 70-529 è sbagliato. In questo contesto,  infatti, viene mostrato l'utilizzo della proprietà OneWay dell'attributo SoapDocumentMethodAttribute. Il metodo riportato, tuttavia, è una funzione che restituisce una stringa: nel caso in cui l'attributo OneWay sia impostato su true (come nell'esempio), il metodo corrispondente non deve restituire alcun valore, altrimenti si ottiene un errore a tempo di esecuzione (cosa assolutamente corretta, dal momento che con OneWay a true si dice al Web service di non spedire indietro alcuna risposta al client). Technorati Tags: Certification, Programming, .NET, Web Services

posted @ Thursday, November 29, 2007 9:34 AM | Feedback (0) | Filed Under [ ASP .NET Certificazioni ]

Windows Server 2008 Developer Center

Windows Server 2008 è alle porte, non c'è bisogno di ricordarlo... In attesa della sua uscita, è possibile visitare il  Developer Center dedicato al nuovo sistema operativo, già ricchissimo di informazioni, link a training kit e webcast. Technorati tags: Windows, Programming

posted @ Friday, November 23, 2007 9:34 AM | Feedback (0) | Filed Under [ Windows Related ]

Nuova versione dei whitepaper sul .NET Framework 3.5

In questo post viene annunciata la disponibilità di nuovi whitepaper sul .NET Framework 3.5. Gli argomenti trattati riguardano ASP.NET AJAX, LINQ, WCF, WF, WPF e CardSpace. Technorati Tags: .NET, Programming ASP .NET, AJAX, LINQ

posted @ Friday, November 16, 2007 9:10 AM | Feedback (0) | Filed Under [ Orcas & .NET 3.5 ]

XNA Game Studio 2.0 Beta presto disponibile

L'annuncio viene direttamente da Michael Klucher, Program Manager della XNA Community Game Platform: There will be a XNA Game Studio 2.0 beta available for you to download very soon! This beta is considered "feature complete." This means that while we still have some issues to address, all of the features that will be in the release are included as part of the beta. Per tutti i dettagli e per gli aggiornamenti, fare riferimento al blog del team di sviluppo di XNA. Technorati Tag: Programming

posted @ Thursday, November 15, 2007 9:08 PM | Feedback (0) | Filed Under [ Tutto & Oltre :-) ]

Il tipo di UnhandledExceptionEventArgs.ExceptionObject

Non ci avevo fatto caso, ma oggi ho notato che la proprietà UnhandledExceptionEventArgs.ExceptionObject è di tipo Object e non Exception. Incuriosito, ho fatto una ricerca con Google e ho trovato questo post di MSDN che spiega l'arcano: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=311431&SiteID=1. Technorati Tags: .NET, Programming

posted @ Monday, November 12, 2007 10:32 AM | Feedback (0) | Filed Under [ C# VB .NET ]

Eseguire test di carico con Reporting Services

Reporting Services 2005 include una funzionalità per prevenire attacchi di tipo Denial of Service al proprio Web service, limitando il numero di richieste che possono essere effettuate da un singolo utente. Nel caso in cui questo limita venga superato, le chiamate successive producono il seguente messaggio di errore: There are currently too many requests in progress for user: "ABC\XYZ". Please wait until the current requests have finished processing before issuing any more. Questo comportamento, assolutamente corretto in un ambiente di produzione, può impedire lo svolgimento di test di carico in fase di sviluppo. Una possibile soluzione, come indicato in questo post,...

posted @ Wednesday, November 7, 2007 9:32 AM | Feedback (0) | Filed Under [ ADO .NET & SQL ]

Gestire i Thread Pool in Windows Vista e Windows Server 2008

Su MSDN Magazine di Ottobre 2007 è stato pubblicato un articolo che illustra le nuove caratteristiche delle API di Windows Vista e Windows Server 2008 per la gestione dei pool di thread. Technorati tags: Windows, Programming

posted @ Monday, October 29, 2007 3:15 PM | Feedback (0) | Filed Under [ C# VB .NET Windows Related ]

Versione finale delle Windows Vista User Experience Guidelines

Sembra che finalmente Microsoft abbia completato il documento in cui illustra le linee guida per la realizzazione di interfacce grafiche conformi ai nuovi canoni introdotti con Windows Vista. Le nuove Windows Vista User Experience Guidelines sono disponibili a questo indirizzo. Se lo si preferisce, è anche possibile scaricare tutte le linee guida in un unico file PDF di ben 33.8 MB, per un ammontare di più di 750 pagine. Technorati tags: Windows, Programming

posted @ Monday, October 29, 2007 12:56 PM | Feedback (0) | Filed Under [ C# VB .NET Windows Related ]

[70-528] Errata corrige #11

A pagina 704 del Self-Paced Training Kit per l'esame 70-528 si dice che si può cambiare il tipo di protezione utilizzato dal sistema di autenticazione di ASP .NET settando l'attributo protection del tag <authentication>, come mostrato anche nell'esempio di codice seguente. In realtà, questo attributo fa parte del tag <forms>; tutti gli esempi successivi, per fortuna, sono corretti. Technorati tags: Certification, Programming, ASP .NET

posted @ Thursday, October 25, 2007 8:29 PM | Feedback (0) | Filed Under [ Certificazioni ]

Office Fluent User Interface Developer Portal

The new Microsoft Office Fluent UI replaces the previous system of layered menus, toolbars, and task panes with a simpler system optimized for efficiency and discoverability. The new UI, including the Office Fluent Ribbon, provides improved context menus, enhanced screen tips, a Mini toolbar, and keyboard shortcuts that help to improve user efficiency and productivity. The new Office Fluent UI is implemented in several applications in the 2007 Microsoft Office suite, including Access, Excel, Outlook, PowerPoint, and Word. Microsoft ha dedicato un intero portale allo sviluppo di interfacce basate sui Ribbon introdotti con Office 2007. A questo indirizzo sono disponibili articoli...

posted @ Tuesday, October 23, 2007 2:13 PM | Feedback (0) | Filed Under [ Tutto & Oltre :-) ]

[70-528] Errata corrige #10

A pagina 633 del Self-Paced Training Kit dell'esame 70-528 si dice di definire un metodo Page_Init e GenerateModeList, dopodiché viene riportato il codice dell'evento Init, che registra un gestore per l'evento InitComplete chiamandolo proprio InitComplete. Tuttavia, nel seguito dell'esercizio si dice che, con questa dichiarazione, quando si verifica l'evento InitComplete viene richiamato il metodo GenerateModeList. Non è chiaramente così; perché questo avvenga, il codice dell'evento Page_Init deve essere così riscritto: protected void Page_Init(object sender, EventArgs e) { Page.InitComplete += new EventHandler(GenerateModeList); } Technorati tags: Certification, Programming, ASP .NET

posted @ Sunday, October 21, 2007 12:28 PM | Feedback (2) | Filed Under [ ASP .NET Certificazioni ]

[70-528] Errata corrige #7

A pagina 469 del Self-Paced Training Kit dell'esame 70-528 si dice che, per eseguire validazione lato client utilizzando un CustomValidator, è necessario impostare la proprietà ClientFunctionName del validatore sul nome della funzione JavaScript da eseguire. In realtà, la proprietà in questione si chiama ClientValidationFunction. Technorati Tags: Certification, Programming, ASP .NET

posted @ Monday, October 8, 2007 3:48 PM | Feedback (0) | Filed Under [ Certificazioni ]

[70-528] Errata corrige #3

L'argomento "accesso ai dati" è uno dei più colpiti dagli errata corrige anche nel Self-Paced Training Kit dell'esame 70-528: a pagina 233 si dice che il metodo DataRow.Load accetta come parametro un array di oggetti che deve corrispondere in numero e tipo di dati alle colonne del DataTable corrispondente. In realtà, questo metodo prende in input un oggetto che implementa l'interfaccia IDataReader. è il metodo LoadDataRow a cui si può passare un array di oggetti. Technorati tags: Certification, Programming, .NET

posted @ Friday, September 28, 2007 3:43 PM | Feedback (0) | Filed Under [ Certificazioni ]

[70-528] Errata corrige #2

Altro errore... A pagina 160 del Self-Paced Training Kit dell'esame 70-528 si dice che, se in DataBoundControl si impostano sia le proprietà DataSource sia DataSourceID, quest'ultima ha la precedenza. In realtà, se si impostano entrambe, quando si arriva ad eseguie il metodo DataBind sull'oggetto si ottiene una InvalidOperationException che dice di rimuovere la definizione di una delle due proprietà. Technorati tags: Certification, Programming, ASP .NET

posted @ Thursday, September 27, 2007 6:27 PM | Feedback (0) | Filed Under [ Certificazioni ]

[70-528] Cross Site Scripting ed encoding delle stringhe

Quando vengono presentati i Web Controls nel Self-Paced Training Kit dell'esame 70-528, si parla dei rischi del Cross Site Scripting. Per fare una prova, ho inserito in una TextBox il seguente contenuto: <script>altert("Ciao");</script> Effettuando il post della pagina (attraverso la pressione di un pulsante), ho ottenuto il seguente messaggio di errore di ASP .NET: A potentially dangerous Request.Form value was detected from the client (TextBox1="<script>altert("Ciao...").Description: Request Validation has detected a potentially dangerous client input value, and processing of the request has been aborted. This value may indicate an attempt to compromise the security of your application, such as a cross-site scripting attack....

posted @ Monday, September 24, 2007 6:09 PM | Feedback (32) | Filed Under [ C# ASP .NET Certificazioni ]

[70-528] Oggetto Button ed evento Command

A pagina 84 del Self-Paced Training Kit dell'esame 70-528 di parla dell'oggetto Button (System.Web.UI.WebControls.Button). In particolare, si dice che un pulsante può essere un tradizionale submit button (che è l'impostazione di default), oppure un pulsante di comando. Per creare un Button di quest'ultimo tipo, è necessario impostare le sue proprietà CommandName e CommandArgument. Tuttavia, nel testo manca un passaggio fondamentale: dopo aver settato questa proprietà, si deve gestire l'evento Command e usare le proprietà dell'oggetto CommandEventArgs per sapere qual è il comando da eseguire ed, eventualmente, gli argomenti ad esso associati. Ad esempio, supponiamo che nella pagina ASPX siano stati...

posted @ Sunday, September 23, 2007 1:31 PM | Feedback (0) | Filed Under [ C# ASP .NET Certificazioni ]

DataAdapter e apertura della connessione

I DbDataAdapter di .NET si basano su oggetti di tipo DbCommand per selezionare, aggiornare, aggiungere ed eliminare le informazioni dalla base di dati sottostante. Gli oggetti DbCommand, a loro volta, mantengono un riferimento alla DbConnection che corrisponde all'origine dati in questione. Tale connessione non deve necessariamente essere aperta prima di richiamare i metodi del DbDataAdapter: nel caso in cui sia chiusa quando si eseguono i metodi del DbDataAdapter, viene aperta automaticamente, per poi essere richiusa al termine dell'operazione. E' possibile verificare questo comportamento con un semplice esempio. Consideriamo il seguente stralcio di codice: 1 SqlConnection db = new...

posted @ Saturday, September 22, 2007 1:30 PM | Feedback (0) | Filed Under [ C# ADO .NET & SQL ASP .NET ]

[70-526] Errata corrige "Special" #10

Ormai sembra una barzelletta, ma per fortuna gli errori sono quasi finiti... Una domanda del quiz di autovalutazione dell'esame 70-526 spiega che si vuole visualizzare una ProgressBar con cui informare l'utente sull'avanzamento di una certa operazione in backgruond. La domanda chiede qual è il modo migliore per realizzare questa funzionalità. La risposta segnalata come valida dice di creare all'interno di un Form un Timer che scatta ogni secondo; nel gestore dell'evento Tick si deve richiamare il metodo BackgruondWorker.ProgressChanged ed esaminare il valore di ritorno per aggiornare la barra. In questo risposta ci sono almeno due errori. Il primo è che...

posted @ Wednesday, September 19, 2007 2:58 PM | Feedback (0) | Filed Under [ C# ]

Aggiungere uno UniqueConstraint ad un DataTable

L'oggetto DataTable dispone della proprietà Constraints, con cui si possono specificare i vincoli di unicità (UniqueConstraint) e di chiave esterna (ForeingKeyConstraint) per la tabella. Ma nel caso in cui si voglia definire un vincolo unique, è possibile evitare la creazione di un oggetto di tipo UniqueConstraint semplicemente impostando a true la proprietà Unique della DataColumn relativa: così facendo, lo UniqueConstraint su quella colonna viene aggiunto automaticamente. In altre parole, i seguenti stralci di codice sono equivalenti: DataTable dt = new DataTable(); DataColumn id = new DataColumn("Id", typeof(int)); dt.Columns.Add(id); UniqueConstraint unique = new UniqueConstraint(id); dt.Constraints.Add(unique); e DataTable dt = new DataTable(); DataColumn id = new DataColumn("Id", typeof(int)); id.Unique...

posted @ Tuesday, September 18, 2007 3:37 PM | Feedback (0) | Filed Under [ C# ADO .NET & SQL ]

Creare programmi paralleli con .NET

Task Parallel Library (TPL) è un componente progettato per semplificare la scrittura di codice gestito in grado di utilizzare automaticamente più processori. Utilizzando questa libreria, è possibile esprimere il potenziale parallelismo nel codice sequenziale esistente, in base al quale le attività parallele esposte verranno eseguite simultaneamente su tutti i processori disponibili. In questo modo si ottengono generalmente notevoli aumenti di velocità. Questa è l'introduzione di un interessante articolo pubblicato su MSDN Magazine di Ottobre 2007 e intitolato Come ottimizzare il codice gestito per computer multicore (la versione inglese è disponibile qui). In esso si parla di una nuova libreria...

posted @ Tuesday, September 18, 2007 10:14 AM | Feedback (0) | Filed Under [ Orcas & .NET 3.5 ]

Lavorare con le reti in .NET 3.5

Su MSDN Magazine di Settembre 2007 è stato pubblicato un interessante articolo che illustra le novità della gestione e dell'utilizzo delle risorse di rete con il .NET Framework 3.5. Gli argomenti trattati sono i seguenti: Socket class performance Internationalized URLs The System.Net.PeerToPeer namespace Personalmente, sono molto interessato al namespace System.Net.PeerToPeer e alle nuove possibilità che offre agli sviluppatori... Technorati Tags: Programming, .NET

posted @ Thursday, September 13, 2007 9:45 AM | Feedback (0) | Filed Under [ Orcas & .NET 3.5 ]

Nuovo aggiornamento per il Krypton Toolkit

Un altro aggiornamento per il Krypton Toolkit, che giunge alla versione 2.6.1. Oltre a risolvere alcuni bug riscontrati con la release precedente, sono stati aggiunti alcuni nuovi controlli: KryptonDataGridViewTextBoxColumn KryptonDataGridViewCheckBoxColumn KryptonDataGridViewButtonColumn KryptonDataGridViewLinkColumn Per il download, fate clic qui. Technorati Tags: Programming, Updates

posted @ Monday, September 10, 2007 1:50 PM | Feedback (3) | Filed Under [ C# VB .NET ]

[70-526] Errata corrige "Special" #5

A quanto pare sul BackgroundWorker ci sono più domande sbagliate che corrette. Una di esse chiede come si può controllare se si è verificato un errore nell'esecuzione del metodo in background. La seguente soluzione è segnalata come corretta (il codice è inserito nel gestore dell'evento RunWorkerCompleted): if (e.Error == null) MessageBox.Show("Error"); Ma non è così. La proprietà Error viene impostata sull'eventuale eccezione che si verifica durante l'esecuzione del metodo in background, quindi per sapere se c'è stato un errore si deve controllare se essa è diversa da null: if (e.Error != null) MessageBox.Show("Error"); C'è un altra domanda relativa al...

posted @ Saturday, September 8, 2007 1:36 PM | Feedback (0) | Filed Under [ Certificazioni ]

Nuova versione del Microsoft Application Verifier

Da qualche giorno è stata rilasciata la versione 3.4 del programma Microsoft Application Verifier: Application Verifier is a runtime verification tool for unmanaged code that assists in finding subtle programming errors that can be difficult to identify with normal application testing. Run the Application Verifier tests on your code to identify issues within heaps, handles, and locks. Il programma può essere scaricato da qui. Sono disponibili le versioni per piattaforme X86, AMD64 e IA64. Technorati Tags: Programming, Programs, Updates

posted @ Tuesday, September 4, 2007 5:07 PM | Feedback (0) | Filed Under [ Tutto & Oltre :-) ]

[70-526] Errata corrige "Special" #1

Purtroppo anche i quiz che accompagnano il Self-Paced Traning Kit dell'esame 70-526 contengono numerosi errori. Inizia così la saga degli errata corrige "Special"... Il primo errore riguarda una domanda che chiede quale provider utilizzare per connettersi ad un database di SQL Server 6. La risposta segnalata come corretta indica ODBC; in realtà (così come viene spiegato anche nel libro), si deve utilizzare l'oggetto OleDbConnection specificando il provider SQLOLEDB: Provider=sqloledb;Data Source=myServerAddress;Initial Catalog=myDataBase; User Id=myUsername;Password=myPassword; Technorati Tags: Certification, .NET, Programming

posted @ Monday, September 3, 2007 2:43 PM | Feedback (0) | Filed Under [ Certificazioni ]

[70-526] RichTextBox e Drag&Drop

L'ho scoperto per caso: se nella finestra delle Proprietà si visualizza la lista degli eventi supportati dal controllo RichTextBox, in essa non compaiono né DragEnter né DragDrop. Sembrerebbe quindi che questo oggetti non supporti il Drag&Drop. In realtà, questi eventi sono definiti anche per il RichTextBox, ma per qualche strana ragione non sono visualizzati in fase di progettazione, dunque possono essere impostati solo a runtime. Technorati tags: Certification, .NET, Programming

posted @ Sunday, September 2, 2007 1:55 PM | Feedback (0) | Filed Under [ C# VB .NET Certificazioni ]

Rilasciato Krypton Toolkit versione 2.6

Component Factory ha rilasciato la versione 2.6 del Krypton Toolkit. Queste le novità: Toolkit Change Highlights KryptonCheckBox control added KryptonRadioButton control added KryptonDataGridView control added ToolTips added for button specs Il download è disponibile qui. Technorati tags: Programming, Updates

posted @ Friday, August 31, 2007 1:03 PM | Feedback (0) | Filed Under [ C# VB .NET .NET 3.0 Orcas & .NET 3.5 ]

Windows Installer 4.5 beta

Come si legge qui, sul sito Microsoft Connect è disponibile la versione beta di Windows Installer 4.5. Prima di effettuare il download è necessario registrarsi, seguendo una procedura alwuanto macchinosa disponibile a questo indirizzo. Technorati tags: Programming, Updates

posted @ Tuesday, August 28, 2007 1:21 PM | Feedback (7) | Filed Under [ C# VB .NET Updates & Service Pack ]

ASP .NET e Silverlight: il video

A questo indirizzo sono disponibili il codice e lo screen cast relativo alla creazione di un sito con ASP .NET 3.5 e Silverlight. Le caratteristiche più interessanti sono: Searching and paging via ListView, DataPager, and LinqDataSource (all new ASP.NET controls with .NET 3.5). Video player via the Media control in the ASP.NET Futures July CTP (uses Silverlight 1.0 RC). Popup biographies and "more/less" collapsible details via the new .NET 3.5-compatible drop of the AJAX Control Toolkit. Back/forward buttons support via the History control in the ASP.NET Futures July CTP. Technorati tags: ASP .NET, Silverlight, Programming

posted @ Tuesday, August 21, 2007 3:08 PM | Feedback (16) | Filed Under [ ASP .NET Silverlight ]

[70-526] UniqueConstraint e chiavi primarie

Se si imposta la proprietà PrimaryKey di un DataTable su una o più colonne, viene automaticamente aggiunto uno UniqueConstraint su tali colonne. Supponiamo che dt e col1 siano, rispettivamente, un DataTable e un DataColumn che fa parte della collezione Columns di dt; eseguendo il seguente codice: 1 dt.PrimaryKey = new DataColumn[] { col1 }; 2 UniqueConstraint unique = new UniqueConstraint(col1); 3 dt.Constraints.Add(unique); Si ottiene una DataException alla riga 3, perché il  constraint è già stato implicitamente aggiunto quando è stata impostata la chiave primaria della tabella (riga 1). Se, invece, si cambia l'ordine di esecuzione, spostando in fondo la prima istruzione: 1 UniqueConstraint...

posted @ Wednesday, August 8, 2007 8:12 PM | Feedback (0) | Filed Under [ Certificazioni ]

Silverlight 1.1 e Visual Studio 2008

A questo indirizzo è disponibile un add-on per Visual Studio 2008 che consente di sviluppare applicazioni Silverlight 1.1. Queste le caratteristiche principali: Visual Basic and C# Project templates Intellisense and code generators for XAML Debugging of Silverlight applications Web reference support Integration with Expression Blend Per utilizzarlo correttamente è necessario che nel sistema sia installato Silverlight 1.1 Alpha Refresh. Technorati tags: Silverlight, Visual Studio, Programming

posted @ Monday, August 6, 2007 7:12 PM | Feedback (0) | Filed Under [ Orcas & .NET 3.5 Silverlight ]

[70-526] Recuperare il link di un controllo LinkLabel

Il controllo LinkLabel non espone una proprietà che consente di recuperare diretamente il testo del link visualizzato al suo interno. Per ottenere tale informazione, è necessario utilizzare la proprietà LinkArea, la quale specifica la porzione di testo che deve apparire "linkata". Nel caso in cui il recupero del testo del link sia un'operazione frequente, può essere utile creare un controllo che estende LinkLabel e vi aggiunge la proprietà mancante: using System; using System.ComponentModel; namespace System.Windows.Forms { public class LinkLabelEx : LinkLabel { [Browsable(false)] public...

posted @ Monday, July 30, 2007 8:10 PM | Feedback (1) | Filed Under [ C# Certificazioni ]

[70-536] Stringhe più sicure

Tra  le numerosissime classi che ho studiato preparando l'esame 70-536, una mi sta tornando particolarmente utile in questi giorni: SecureString. Si tratta di un contenitore "sicuro" per dati sensibili, come password, numeri di carte di credito, ecc. Sicuro perché il contenuto di un oggetto SecureString è mantenuto in memoria criptato e viene decifrato solo quando si tenta di accedere al suo valore. Inoltre, esso implementa l'interfaccia IDisposable: quando si richiama il metodo Dispose, la zona di memoria che contiene la stringa viene sovrascritta più volte con una sequenza di zeri. In questo post sono disponibili maggiori dettagli sulla classe SecureString....

posted @ Monday, July 23, 2007 12:19 AM | Feedback (3) | Filed Under [ Certificazioni ]

Aggiornamento per Windows Vista Controls for .NET 2.0

Dopo un periodo di pausa, ho ripreso in mano il progetto Windows Vista Controls for .NET 2.0, dedicato alla realizzazione di controlli che riproducono l'aspetto degli oggetti tipici di Windows Vista. Ho così realizzato la versione 1.1 della libreria, le cui novità principali: L'aggiunta del controllo ComboBox con Cue banner; La correzione di diversi bug relativi al controllo TreeView. Dalla pagina del progetto è possibile scaricare sia i sorgenti sia la versione compilata della libreria, che è rilasciata con licenza Microsoft Community License (Ms-CL). Technorati Tags: CodePlex, Programming, .NET

posted @ Saturday, July 21, 2007 5:18 PM | Feedback (0) | Filed Under [ C# CodePlex ]

[70-536] Errata corrige #4

Questa non è un'errata corrige sul libro, bensì sul CD allegato, e in particolare sulle domande contenute nei quiz di preparazione all'esame. Utilizzando il Certification Mode, capita spesso di trovare soluzioni sbagliate. Ad esempio: Il seguente stralcio di codice: TextWriter tx = new StreamWriter(@"D:\Prova.txt"); tx.Write("Hello world"); tx.Close(); è presentato come una delle alternative per la scrittura di un file di testo... Andando a vedere la correzione, questa soluzione è segnalata come sbagliata, in realtà essa compila e viene eseguita correttamente, producendo il risultato atteso Una domanda chiede come lanciare un thread in modo da minimizzare l'impatto sulle prestazioni delle altre applicazioni: tra le alternative,...

posted @ Tuesday, July 17, 2007 5:55 PM | Feedback (0) | Filed Under [ Certificazioni ]

[70-536] Recuperare il proprietario di un file

Per recuperare il proprietario di un file o di una directory è necessario utilizzare, rispettivamente, gli oggetti FileSecurity e DirectorySecurity. La seguente routine consente di recuperare il nome del proprietario del file specificato: private static string Owner(string fileName) { FileSecurity fs = File.GetAccessControl(fileName); NTAccount acc = (NTAccount)fs.GetOwner(typeof(NTAccount)); return acc.Value; } Dopo aver ottenuto l'oggetto *Security corrispondente, viene creato un NTAccount che contiene il riferimento al proprietario del file. Technorati Tags: Certification, .NET, Programming, CS

posted @ Tuesday, July 17, 2007 10:22 AM | Feedback (0) | Filed Under [ C# Certificazioni ]

Video su Acropolis e WPF

Su WindowsClient.net è disponibile una nutrita serie di video che mostra l'utilizzo di diversi aspetti di Acropolis e Windows Presentation Foundation. Tali video sono disponibili in numerosi formati, tra cui quello per iPod e quello per Zune, e sono tutti accompagnati da esempi di codice in VB e C#. Technorati Tags: ASP .NET, Programming

posted @ Monday, July 16, 2007 9:24 AM | Feedback (0) | Filed Under [ ASP .NET .NET 3.0 ]

[70-536] SortedList vs SortedDictionary

Ad una prima analisi, le classi generiche SortedList e SortedDictionary possono sembrare equivalenti, dal momento che entrambe consentono di memorizzare coppie chiave/valore ordinate per chiave. In realtà, esse presentano differenze significative per quanto riguarda sia la complessità delle operazion di inserimento e rimozione, sia l'occupazione di memoria. In questa pagina è disponibile una tabella comparativa che riassume tali differenze. Technorati Tags: Certification, .NET, Programming

posted @ Sunday, July 15, 2007 12:18 PM | Feedback (0) | Filed Under [ Certificazioni ]

Scrivere applicazioni Desktop e Mobile

Su MSDN Magazine di Luglio 2007 è stato pubblicato un articolo che spiega l'approccio da seguire per realizzare applicazioni che devono essere eseguite sia su PC desktop sia su palmari con Windows Mobile. Technorati Tags: .NET, .NET Compact Framework, Programming

posted @ Saturday, July 14, 2007 10:59 AM | Feedback (0) | Filed Under [ C# .NET Compact Framework Orcas & .NET 3.5 ]

[70-536] Assembly.LoadFile e Assembly.LoadFrom

La classe System.Reflection.Assembly offre due metodi statici che consentono di caricare un assembly: LoadFile e LoadFrom. Ad una prima analisi può sembrare che essi svolgano la stessa funzione, infatti la MSDN dice che LoadFile loads the contents of an assembly file, mentre LoadFrom loads an assembly. In realtà, questi metodi sono profondamente diversi. In questo post è possibile trovare una breve descrizione delle loro differenze di comportamento. Technorati Tags: Certification, .NET, Programming

posted @ Friday, July 13, 2007 12:07 PM | Feedback (0) | Filed Under [ Certificazioni ]

[70-536] Utilizzare correttamente l'attributo PrincipalPermissionAttribute

Utilizzando opportunamente l'attributo PrincipalPermissionAttribute si può consentire l'esecuzione di un metodo solo agli utenti autenticati, a quelli che fanno parte di uno determinato gruppo, oppure ad un utente specifico. Ad esempio, per fare in modo che un metodo possa essere eseguito solo dagli utenti che appartengono al gruppo Admistrators della macchina locale, basta scrivere: [PrincipalPermission(SecurityAction.Demand, Role=@"BUILTIN\Administrators")] private static void AdministratorOnly() Perché questo codice funzioni, è necessario configurare la principal policy corrente in modo che si appoggi alle funzioni di sicurezza di Windows. In pratica, prima dell'esecuzione del metodo AdministratorOnly bisogna eseguire questa riga di codice: AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal); Senza di essa, arrivando ad eseguire il metodo...

posted @ Friday, July 6, 2007 3:42 PM | Feedback (0) | Filed Under [ C# Certificazioni ]

[70-536] Errata corrige #2

Altro giorno, altro errore ... A pagina 558 si dice che, se si scrive un evento in un certo Registro Eventi (ad esempio PrimoLog), quindi si tenta di scrivere un altro evento, con la stessa proprietà Source, su un registro diverso (SecondoLog), l'evento viene invece scritto su PrimoLog, perché ogni sorgente può essere registrata solo una volta in un solo Registro Eventi. In realtà, se si tenta un'operazione del genere viene generata una ArgumentException. Technorati Tags: .NET, Programming

posted @ Tuesday, July 3, 2007 12:49 PM | Feedback (0) | Filed Under [ Certificazioni ]

Extension Methods

Tra le numerosissime novità del .NET Framework 3.5 che sto sperimentando in questi giorni, oggi voglio segnalare gli Extension Methods. Come riportato qui: The basic idea is that the set of methods available on an instance of a particular type is open to extension. In effect, we can add new methods to existing types. Supponiamo di eseguire sempre la stessa operazione su un certo tipo di dati, ad esempio ottenere l'array di byte a partire dal contenuto di una stringa. Una soluzione tipicamente adottata fino ad oggi consiste nel definire una classe statica con il metodo che esegue l'operazione,...

posted @ Monday, March 5, 2007 8:18 PM | Feedback (5) | Filed Under [ C# VB .NET Orcas & .NET 3.5 ]

Visual Basic .NET e i metodi case-sensitive del C#

Visual Basic .NET è case-insensitive, mentre C# fa differenza tra maiuscole e minuscole. C'è un caso in cui questo comportamento può causare problemi. La seguente classe C# compila correttamente: 1 public class TestClass 2 { 3 public void Foo(string str) 4 { 5 MessageBox.Show("Richiamata Foo con parametro " + str); 6 } 7 8 public void foo(string str) 9 { 10 ...

posted @ Sunday, March 4, 2007 12:00 PM | Feedback (5) | Filed Under [ C# VB .NET ]

Gestire i Feed RSS da .NET

Cercando su Internet è possibile trovare numerose class library che consentono di gestire i Feed RSS dalle proprie applicazioni .NET. Come avevo segnalato qui, anche Microsoft fornisce un'API per la loro manipolazione. Recentemente ho scoperto Argotic, una libreria con le seguenti caratteristiche: Complete implementation of the RSS 2.0 specification. Complete implementation of the ATOM 1.0 specification. Implements a provider model for storing/retrieving syndication information to your back-end database of choice. Provides an extensible framework for processing any syndication specification extension. Natively handles the RCF822 and W3C DateTime structures. Support for auto-discovery of syndication feeds...

posted @ Saturday, March 3, 2007 2:59 PM | Feedback (0) | Filed Under [ C# VB .NET ]

Windows Vista, Gadget per la SideBar e codice .NET

I Gadget per la SideBar di Windows Vista sono basati su HTML, XMl e JavaScript. Nel caso in cui si vogliano creare Gadget che utilizzano codice .NET, è necessario un piccolo "trucco", illustrato in un interessante articolo apparso su CodeProject: The idea is simple; create a small, lightweight .NET COM component that uses reflection to load any assembly and type. Then, that type can be called directly from JavaScript. L'idea viene presentata attraveso la creazione di un gadget che verifica periodicamente la presenza di nuovi messaggi di posta in un account di Gmail. Technorati tags: Windows, Programming, .NET

posted @ Saturday, February 3, 2007 12:13 PM | Feedback (3) | Filed Under [ C# Windows Related ]

Creare gadget per la sibebar di Windows Vista

L'articolo Gadget Development Overview, pubblicato su MSDN, illustra la creazione di gadget per la Sidebar di Windows Vista. Sono disponibili anche alcuni semplici esempi. Chi è interessato ad approfondire la tematica può fare riferimento al sito Microsoft Gadgets e in particolare alla sua sezione Build, dedicata espressamente agli sviluppatori. Technorati tags: Windows, Programming

posted @ Thursday, February 1, 2007 4:06 PM | Feedback (8) | Filed Under [ Windows Related ]

La TreeView di Windows Vista

Ho già avuto modo di parlare di alcuni dei nuovi controlli introdotti da Windows Vista. Oggi è la volta della TreeView. Osservando il controllo utilizzato da Explorer per visualizzare l'elenco delle cartelle, si nota che i vari rami non sono più collegati da una linea e che, al posto del segno + per segnalare la presenza di sottoelementi, viene utilizzata una piccola freccina che si inclina verso il basso quando si espande una voce. Infine, la barra di scorrimento orizzontale è scomparsa: quando si sposta il mouse su un elemento che non è completamente visibile, la TreeView effettua lo scrolling automaticamente. E' possibile ottenere...

posted @ Wednesday, January 31, 2007 5:13 PM | Feedback (1) | Filed Under [ C# ]

Comprimere e decomprimere file con il .NET Compact Framework

La versione 2.0 del .NET Framework contiene il namespace System.IO.Compression, il quale fornisce una serie di oggetti per gestire la compressione/decompressione in formato ZIP. Queste classi, tuttavia, non sono incluse del .NET Compact Framework. In questo caso, per utilizzare file compressi è necessario fare ricorso a librerie di terze parti, come SharpZipLib, scritta completamente in C# e rilasciata con i codici sorgenti. Questa libreria, inoltre, funziona anche con la versione Full del .NET Framework. Technorati tags: .NET Compact Framework, Programming

posted @ Friday, January 19, 2007 11:39 AM | Feedback (4) | Filed Under [ .NET Compact Framework ]

Powered by:
Powered By Subtext Powered By ASP.NET