Around and About .NET World

Il blog di Marco Minerva
posts - 1612, comments - 2154, trackbacks - 2144

My Links

News


Curriculum Vitae (ITA)

Curriculum Vitae (ENG)

Contattami su Live Messenger:


MCTS: Windows, Web, Distributed Applications & SQL Server

MCPD: Enterprise Applications

Tag Cloud

Archives

Post Categories

Links

C#

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 @ giovedì 9 febbraio 2012 0.54 | 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 @ domenica 5 febbraio 2012 20.40 | Feedback (2) | Filed Under [ C# ]

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 @ lunedì 23 gennaio 2012 22.12 | Feedback (8) | 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 @ sabato 21 gennaio 2012 21.37 | 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 @ martedì 17 gennaio 2012 23.18 | Feedback (0) | 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 @ sabato 14 gennaio 2012 20.32 | Feedback (2) | 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 @ martedì 10 gennaio 2012 22.24 | Feedback (0) | Filed Under [ C# WCF ]

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 @ sabato 7 gennaio 2012 14.23 | 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 @ martedì 3 gennaio 2012 20.38 | 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 @ venerdì 30 dicembre 2011 19.12 | Feedback (0) | Filed Under [ C# ]

Full C# Archive

Powered by: