|
ASP .NET
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...
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...
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
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: ...
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...
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...
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...
Ultimamente, non ci siamo quasi più fatti sentire, quindi immagino che molti di voi abbiamo pensato che DotNetToscana fosse morta. E invece, come l’araba fenice, siamo tornati! Dopo una serie di incontri, virtuali e non, abbiamo pubblicato un nuovo sito web, molto più snello e veloce del precedente. Ma, soprattutto, abbiamo deciso di partire alla grande organizzando un Hands On Lab sullo sviluppo di videogiochi per Windows Phone 7 con XNA. L’evento si svolgerà il 14 Maggio a Pisa e avrà durata giornaliera. E’ già tutto pronto: sul nostro sito potete leggere di cosa si tratta e registrarvi immediatamente...
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
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
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...
DotNetToscana non è mai decollata come avremmo voluto. Comunque noi non ci arrendiamo e ce la metteremo tutta per cambiare rotta ed imboccare quella giusta. Vogliamo approfittare di questa pausa estiva per riflettere sulle difficoltà ed i problemi che abbiamo incontrato più volte in questi anni e risolverli. Però per farlo al meglio abbiamo bisogno anche di sentire la vostra voce, per questo abbiamo creato un piccolo sondaggio grazie a cui potrte farci sapere le vostre opinioni, i vostri consigli e suggerimenti. L’obiettivo finale è quello di far “rinascere” DotNetToscana. Clicca qui per rispondere al sondaggio Technorati Tag:...
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...
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;
...
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
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
Poco fa sono andato su CodePlex per scaricare l’aggiornamento di un programma, e nella sezione Releases ho trovato questo: ASP.NET MVC 2 RTM - Mar 11 2010 This release contains the source code for ASP.NET MVC 2 RTM as well as the ASP.NET MVC Futures project. The futures project contains features that ... A quanto pare il rilascio è di poche ore fa… Chi è interessato solo ai binari, può effettuarne il download dal sito Microsoft. Technorati Tag: .NET,Visual Studio,ASP .NET,MVC
E’ finalmente disponibile online il materiale presentato durante il Community Tour di DotNetToscana svoltosi lo scorso 12 Gennaio. Chi è interessato può accedere all’archivio contenente le slide e gli esempi visitando la sezione Files del nostro sito. Technorati Tag: Community,C#,ASP .NET,Programs,Silverlight,Tools
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...
Sono finalmente aperte le iscrizioni al Community Tour di DotNetToscana. Chi si era precedentemente registrato, dovrebbe aver già ricevuto via mail il link alla nuova pagina di registrazione; chi non lo avesse ricevuto, oppure non si era ancora segnato all’evento, può farlo utilizzando l’apposito form disponibile su WWEvents. Technorati Tag: Community,Microsoft,.NET,Visual Studio
A causa di problema organizzativi, Microsoft, in accordo con DotNetToscana, ha deciso di rinviare la tappa del Community Tour prevista per il 9 Dicembre a Navacchio (PI). L'evento dovrebbe essere riproposto nei giorni 11 oppure 12 Gennaio, ma naturalmente comunicherò tempestivamente ogni aggiornamento. Mi dispiace molto per questo spostamento, sono sicuro che la prossima volta andrà tutto alla grande! Technorati Tag: .NET,Community,Microsoft
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...
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
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
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
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,...
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
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...
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#
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
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
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...
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
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
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...
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
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...
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...
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 ...
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
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"...
The AJAX Profiling Extensions provide much-needed visibility into often complex, web client-side interactions for the first time. You do not need to download and install any additional software, plug-ins, or ActiveX controls on the machine where the AJAX web client code is running to use the AJAX Profiling Extensions to gather JavaScript execution-time data. Also, this works with any web browser, including, of course, the latest version of Internet Explorer. AJAX Profiling Extensions is an add-on to the performance tools that are available in Visual Studio Team System 2008 Development Edition and Visual Studio Team Suite, extending...
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
Se la cancellazione di file dal Solution Explorer di Visual Studio impiega diversi secondi, arrivando a bloccare l'intero ambiente di sviluppo, il problema è dovuto all'elevato numero di file presenti nel Cestino: basta svuotarlo per ottenere il comportamento normale (ovvero cancellazioni quasi istantanee). Technorati Tags: Visual Studio
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...
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
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
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'...
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...
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...
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>
...
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
Today we released updates to the Microsoft Virtual Earth AJAX control and a new version of the Virtual Earth 3D map control. We’ve added a couple new methods for adding and removing pins (and DIVs) in the AJAX control; added performance improvements for AJAX and 3D; enhanced geocoding and parsing across the board (AJAX and Virtual Earth Web Service) and fixed a few bugs in the AJAX and 3D controls. Tra le novità, si segnala il pieno supporto per Internet Explorer 8. Maggiori informazioni sono disponibili qui. Technorati Tag: Web,AJAX
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
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...
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...
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
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...
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
So che sono un po' di parte, ma personalmente ritengo che l'Installation Fest di Mercoledì scorso sia andato molto bene. L'organizzazione è stata ineccepibile (quanto c'era da mangiare…), le persone si sono dimostrate interessate agli argomenti e la mia sessione sulle novità per sviluppatori è piaciuta, come testimoniato dalle domande che mi sono state fatte alla fine. Sono contento che sia andata così bene, e che l'evento sia stato anche l'occasione per incontrare nuove persone, fare due chiacchere mentre l'installazione di Windows 7 filava più o meno liscia… E lanciare il sasso per coinvolgere altra gente nella nostra avventura di...
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...
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
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
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
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
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
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ò...
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...
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
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à...
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...
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
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
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
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
Andrea Marzilli, redattore e amico di HTML.it, mi ha fatto un'intervista a proposito dello User Group DotNetToscana, di cui sono un fondatore: si parla della sua nascita, del suo spirito e dell'evento che si terrà a Pisa il 20 Febbraio prossimo. Technorati Tag: .NET
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
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...
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
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
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;
}...
E' con sommo piacere (e una punta di soddisfazione) che annuncio pubblicamente il primo workshop organizzato dallo User Group .NET Toscana: Microsoft .NET Framework tra presente e futuro. L'evento si svolgerà il giorno 20 Febbraio, dalle 14.00 alle 19.00 presso il Dipartimento di Informatica dell'Univeristà di Pisa. La partecipazione è completamente gratuita. Gli argomenti di cui vorremmo parlare sono tanti, ma purtroppo dobbiamo fare una scelta: per tale motivo, attualmente è in corso un sondaggio con cui chiunque può esprimere le proprie preferenze. Technorati Tags: .NET
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
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
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
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...
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
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
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
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
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
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...
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...
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...
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
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...
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...
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
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
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
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
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 ?
...
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 =...
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
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
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()
...
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...
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...
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
Il buon Matteo mi ha preceduto di qualche clic... Il panorama delle Community regionali dedicata a .NET si è da poco allargato con la nascita dello User Group Toscano. Era da diverso tempo che questa idea ci rimbalzava per la testa, e finalmente ci siamo riusciti! Il gruppo si è riunito per la prima volta intorno alle metà di Settembre... Un'allegra combriccola di 8 persone accomunata dalla passione per .NET, dalla voglia di mettersi in gioco e dalla convinzione che le Community siano un luogo di incontro (reale o virtuale che sia) di grande importanza. Poi sono arrivati i...
Nella prossima versione di Visual Studio Team System (Rosario, appunto), la Developer Edition e la Database Edition saranno unite in una nuova, unica edizione che le comprenderà entrambe. Fonte: AssemblyInfo blog Technorati Tag: .NET,Visual Studio
Originally posted at dotnettoscana.org
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...
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
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...
In questo post è presente un breve questionario sulla distribuzione delle applicazioni .NET, che ha la scopo di raccogliere informazioni per migliorare il deploy nelle prossime versioni del Framework. Technorati Tag: .NET
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
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
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
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
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
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
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...
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
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
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
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
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
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
Lo segnalo per quanti ancora non lo sapessero ma anche come promemoria personale: da qualche tempo gli aggiornamento e i bug fix di Visual Studio sono reperibili su MSDN Code Gallery: facendo clic su questo link è possibile accedere alla lista completa. Technorati Tag: .NET,Visual Studio,Updates
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
Questo post spiega i semplici passi da seguire per aggiornare Expression Web 2 dalla versione trial alla release con licenza. Technorati Tag: .NET,ASP .NET,Programs
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
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
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,...
E' stata rilasciato un aggiornamento della macchina virtuale che Microsoft mette gratuitamente a disposizione per testare la compatibilità dei propri siti Internet su Windows XP con Internet Explorer 6, 7 e 8 beta 1. L'immagine, scaricabile qui, può essere essere eseguita fino all'inizio di Settembre. Technorati Tag: Web,Programs,Updates,ASP .NET
In attesa che venga definitivamente deciso quale collocazione attribuire a Sandcastle (ad essere sinceri, a me non sembra una decisione tanto difficile ), per adesso è possibile scaricare l'ultima versione da Microsoft Downloads. Technorati Tag: .NET,Visual Studio,Tools
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...
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
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...
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
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
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
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"
...
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
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
Oggi qui in Italia è la festa dei lavoratori... Ma non per Microsoft, che ha appena rilasciato la versione 2 di Expression Studio. Come per la release precedente, dal sito è possibile scaricare una versione di prova funzionante per un periodo di 30 giorni. Technorati Tags: Programs, Web
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
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
Giornata di annunci... A quanto pare una nuova versione di Sandcastle è dietro l'angolo e dovrebbe essere rilasciata entro la fine del mese, come annunciato qui. Questa release sarà utilizzata per generare la documentazione di Visual Studio 2008 SP1 che sarà pubblicata su MSDN.
Technorati Tag: .NET,Visual Studio,Tools,Updates,C#,VB .NET,ASP .NET,ADO .NET
In questo post viene annunciato il nuovo Training Kit per .NET 3.5, contenente corsi relativi a: ADO.NET Data Services ADO.NET Entity Framework ASP.NET AJAX History ASP.NET Dynamic Data ASP.NET MVC ASP.NET Silverlight controls Il download, disponibile qui, è di circa 35 MB. Technorati Tag: .NET,ASP .NET,ADO .NET
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
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
Grazie a Raffaeu, che ha fatto il mio nome alla redazione di HTML.it, da oggi sono il nuovo gestore della rubrica Uno script al giorno relativa ad ASP .NET. Spero di poter fornire ogni giorno nuovi esempi sempre più interessanti Technorati Tags: ASP .NET
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
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
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
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
A questo indirizzo sono disponibili diversi esempi di utilizzo del nuovo controllo ListView introdotto con la versione 3.5 di ASP .NET.
Technorati Tag: ASP .NET
Con questo post viene annunciato il rilascio della nuova release di Sandcastle, che è identificata dal numero di versione 2.4.10115. Come era stato promesso qualche giorno fa, il progetto è ora disponibile su CodePlex.
Technorati Tags: Visual Studio, Tools, Updates
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
Stando a quanto annunciato in questo post, presto Sandcastle verrà pubblicato su CodePlex. L'indirizzo a cui raggiungere il progetto è http://www.codeplex.com/Sandcastle, ma in questo momento non è ancora stato pubblicato.
Technorati Tags: .NET, CodePlex, Tools
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
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...
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
In questa pagina della Knowledge Base di Microsoft è disponibile la lunga serie di problemi che sono stati risolti con il Service Pack 1 del .NET Framework 2.0. Per la precisione, si tratta di ben 161 fix, di ognuno dei quali è riportato il link alla pagina di descrizione.
Technorati Tags: .NET,Updates
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....
It must be holiday season at Microsoft Press too. They have just released an e-book on Visual Studio 2008 technologies and are giving it away for free. The e-book includes excerpts from three recent book releases and provides a wealth of information and insights from top experts:
Introducing Microsoft LINQ by Paolo Pialorsi and Marco Russo by Paolo Pialorsi and Marco Russo
Introducing Microsoft ASP.NET AJAX by Dino Esposito (Solid Quality Learning) by Dino Esposito
Introducing Microsoft Silverlight 1.0 by Laurence Moroney by Laurence Moroney
L'annuncio completo è disponibile...
Altro errore di codice nel Self-Paced Training Kit per l'esame 70-529. Omai sono sicuro che si tratti di discriminazione... In questo post avevo segnalato gli errori in in due listati C#, mentre il corrispondente in VB .NET era corretto. E la stessa cosa accede a pagina 95; nel codice C# viene fatto questo controllo:
if (Session["UserID"] != null)
Tuttavia, nel corpo dell'if si aggiunge alla Session un oggetto con chiave UserID , invece si recuperarlo. Un'occhiata alla versione VB .NET chiarisce ogni dubbio: prima di aggiungere l'oggetto alla sessione, bisogna verificare che Session["UserID"] sia uguale a null, e non diverso
Ma cosa vi ha fatto...
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
Magari è una cosa risaputa, ma io l'ho scoperto solo oggi per puro caso: per selezionare tutto il corpo di un metodo nell'editor di Visual Studio, basta fare doppio clic in un punto qualsiasi a sinistra del metodo stesso (per capirci, nello spazio della finestra in cui il puntatore del mouse "cambia orientamento" passando ad indicare verso destra).
Technorati Tag: 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 */
...
Qualche giorno fa, su consiglio di Matteo, avevo fatto una segnalazione su Microsoft Connect relativa al fatto che la collezione MultiView.Views accetta oggetti di tipo Control, e non View, come sarebbe lecito attendersi (qui il post originale). Ieri sera ho ricevuto la risposta: Since the Multiview control has already shipped in previous versions of the framework we cannot make the type of public properties more restrictive. Doing so would break existing code that passed in references typed as Control. Che effettivamente era quello che mi aspettavo . A questo punto, però, sarebbe interessante capire perché era stata fatta questa...
Come segnalato questa mattina da Alessandro, è stata rilasciata la CTP di ASP .NET 3.5 Extensions. Oltre alle risorse indicate sul blog di Scott Guthrie, è possibile dare un rapido sguardo alle principali novità che ci attendono leggendo questo post, che contiene anche qualche esempio di codice.
Technorati tag: ASP .NET
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...
In questo post il mitico Scott Guthrie presenta i prossimi rilasci che riguarderanno ASP .NET, Silverlight e IIS 7.0. Ma l'annuncio più importante, presente all'inizio della pagina, secondo me è un altro:
We announced last month that we'll provide the ability for developers to download and browse the source code of the .NET Framework libraries, as well as enable integrated source debugging of them using Visual Studio 2008. [...] We are finishing up the final deployment of the source servers that host this now, and will be publishing instructions on how to enable the integrated debugging experience within Visual Studio 2008 shortly.
Cos'altro aggiungere... Rimaniamo...
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
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
E' stato rilasciato un aggiornamento per Visual Studio 2005 SP1 che risolve un problema a causa del quale l'IDE potrebbe bloccarsi durante la scrittura di commenti XML. A questo indirizzo, oltre al link per il download, è mostrata la procedura con cui riprodurre l'errore.
Technorati Tags: Visual Studio, Updates
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
In questo post viene spiegato come la velocità del disco rigido influenza le prestazioni di Visual Studio 2005. Sono anche fornite alcune raccomandazioni sulle velocità consigliate per gli hard disk dei PC fissi e portatili, oltre ad una serie di link che spiegano come migliorare le prestazioni dell'ambiente di sviluppo.
Technorati Tag: Visual Studio
Grazie all'esame 70-528 ho avuto la possibilità di conoscere il controllo MultiView, che devo dire è estramamente utile, a fronte della sua semplicità di utilizzo. Nella sua implementazione ci sono però delle cose che non mi convincono. Innanzi tutto, l'oggetto sembra un normale contenitore di altri controlli, tuttavia in esso si possono aggiungere solo oggetti di tipo View, altrimenti si ottiene un errore. Era meglio che l'oggetto MultiView disponesse di una proprietà-collezione Views, con cui aggiungere le varie viste. In realtà, esso espone effettivamente una proprietà Views, non disponibile a tempo di progettazione, che consente di aggiungere oggetti di tipo Control. Tuttavia, se si aggiunge un...
Sul blog di MSDN Italia viene annunciata la disponibilità di un training kit per Visual Studio 2008, comprendente materiale per un corso di 5 giorni che tocca le seguenti tecnologie: LINQ, C# 3.0, VB 9, WCF, WF, WPF, Windows CardSpace, Silverlight, ASP.NET Ajax, .NET Compact Framework 3.5, VSTO 3.0, Visual Studio Team System, e Team Foundation Server. Io vado subito a darci un'occhiata
Technorati tags: Visual Studio, .NET, CS, VB .NET, ASP .NET, AJAX, .NET Compact Framework, Silverlight, Team Foundation Server
Questa mattina ho installato i Web Services Enhancements 3.0. La procedura sembrava andata a buon fine, tuttavia nel menu contestuale accessibile facendo un clic destro sul nome di un progetto nel Solution Explorer di Visual Studio 2005 il comando WSE Settings 3.0 non era apparso. Ho così fatto una ricerca su Internet e sono giunto a questo post di Marco De Sanctis, che spiega la causa e la soluzione del problema. Grazie Marco! Technorati tags: Visual Studio, Web Services
Come tutti sappiamo, quando Microsoft ha progettato il .NET Framework 3.0, lo ha rilasciato come "estensione" del .NET Framework 2.0: quello che già c'era non è stato modificato, sono solo stati aggiunti nuovi namespace e, quindi, nuove classi. E la stessa cosa accade con il .NET Framework 3.5, che si colloca al di sopra delle versioni precedenti, senza cambiarle (a parte gli aggiornamenti contenuti nei Service Pack). Questo modo di procedere è necessario per garantire la compatibiltà con le applicazioni esistenti, tuttavia sta portando ad una sorta di "effetto cipolla": ogni nuovo rilascio aggiunge uno strato a quelli già esistenti.
Non...
E' stata rilasciata la nuova CTP di Ottobre 2007 di Sandcastle, che può essere scaricata facendo clic qui. La lista delle novità introdotte è troppo lunga per essere inserita in questo post, quindi vi rimando all'annuncio ufficiale per tutti i dettagli.
Technorati tags: Tools, Updates
Questo non me lo voglio proprio perdere... Leggete cosa hanno tirato fuori dal cappello quei ragazzi di OpenNETCF:
Padarn is a very small-footprint ASP.NET web server designed to run under Windows CE 5.0 and 6.0. Padarn provides a subset of the Microsoft's ASP.NET which allows OEMs to leverage existing ASP.NET code and ASP.NET developer resources to get their embedded product to market faster. [...] Padarn can be used to create web-based front ends for almost any embedded system. From test and measurement devices and networking appliances to telematics and industrial automation, if your device has network connectivity, you can leverage Padarn...
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
Questo articolo pubblicato su MSDN Magazine di Settembre 2007 spiega come integrare funzionalità di ricerca in un sito ASP .NET utilizzando il Web Service esposto da Live Search. (Il link riportato si riferisce alla versione inglese; per leggere l'articolo in italiano, fare clic qui) Technorati tags: ASP .NET
A questo indirizzo è disponibile una raccolta di 15 add-in gratuiti per Visual Studio. Nei commenti al post, inoltre, vari utenti hanno segnalato altri tool anch'essi molto interessanti. Technorati Tags: Visual Studio, Tools
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....
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...
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...
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
Questa mattina, testando un sito web pubblicato su un sistema con Windows Server 2003, quando ho cercato di aprire la Home Page ho ottenuto il seguente messaggio di errore: Server Application Unavailable. L'immancabile ricerca su Google mi ha condotto su questa pagina della Knowledge Base di Microsoft, in cui si dice che si tratta di un bug che affligge esclusivamente i siti ASP .NET realizzati con il .NET Framework versione 1.0 e pubblicati su una macchina con Windows XP Professional; questo problema è una conseguenza dell'aggiornamento di sicurezza MS03-032. In realtà, il problema si verifica anche in un altro caso...
Popfly è stato aggiornato con una discreta serie di novità, come annunciato in questo post dal suo team di sviluppo. Technorati Tags: Web, Popfly, Updates
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
Onestamente, devo ammettere che non sto seguendo molto lo sviluppo di Acropolis, anche se mi ero ripromesso di farlo, perché l'idea mi sembrava interessante. Ad ogni modo, ieri è stata rilasciata la CTP di Luglio, disponibile per il download qui. Maggiori informazioni sulle novità introdotte sono disponibili in questo post. Technorati Tags: ASP .NET, Updates
In questo post sono disponibili i link a ben 20 articoli che parlano del Garbage Collector di .NET.
A Visual Studio patch that fixes the Visual Studio F5 debugging of IIS7 applications on Windows Vista Home Premium and above has been released! This patch solves the "An authentication error occurred while communicating with the web server. Please see Help for assistance.", and "Debugging failed because integrated Windows authentication is not enabled. Please see Help for assistance" Tutti i dettagli del problema e il link al file di aggiornamento sono disponibili in questo post.
Non ci avevo fatto caso. Oggi, tornando nella pagina di installazione di Silverlight 1.1 Alpha, ho notato questa precisazione:
TIME-SENSITIVE SOFTWARE. The software will stop running on August 1, 2007. You may not be able to access data used with the software when it stops running.
Dunque, tra meno di due mesi sarà rilasciata una nuova build di Silverlight 1.1.
E' stata rilasciata una nuova versione dell'AJAX Control Toolkit, in cui, tra le altre cose, sono stati risolti circa 125 bug riscontrati nelle release precedenti. Maggiori informazioni sono disponibili in questo post.
Questo post contiene link a diversi siti con GIF animate gratuite che rappresentano progess bar da utilizzare con l'UpdateProgress di AJAX (ma non solo).
Popfly is the fun, easy way to build and share mashups, gadgets, Web pages, and applications. Popfly consists of two parts: Popfly Creator is a set of online visual tools for building Web pages and mashups. Popfly Space is an online community of creators where you can host, share, rate, comment and even remix creations from other Popfly users. Ecco l'annuncio di un ennesimo tassello nel già variegato mondo della programmazione web secondo Microsoft. Popfly è attualmente in versione alpha e, come era lecito immaginarsi, richiede Silverlight 1.0. Maggiori informazioni su Popfly sono disponibili qui.
In questa pagina sono contenute alcune tabelle che riassumo le principali differenze tra Web Application project e Web Site project. L'argomento è stato affrontato più volte, ma credo che avere a portata di mano una tabella di questo tipo possa tornare sempre utile .
Se si cerca di utilizzare SQL Server Compact Edition all'interno di un sito o di un Web Service ASP .NET, quando viene richiamato il metodo Open dell'oggetto SqlCeConnection si ottiene la seguente eccezione: System.NotSupportedException: SQL Server Compact Edition is not intended for ASP.NET development. Questo mesaggio è ragionevole, infatti SQL Server CE è stato pensato per l'impiego in applicazioni Smart Client e Smart Device, non per lo sviluppo web. Tuttavia, esiste un metodo che consente di utilizzare comunque questo database engine anche con ASP .NET. E' sufficiente eseguire l'istruzione AppDomain.CurrentDomain.SetData("SQLServerCompactEditionUnderWebHosting", true);
prima di aprire la connessione al database. Bisogna però tenere presente che in questo...
In questa pagina è possibile trovare la bellezza di 99 link verso siti che offronto template e skin per siti web.
Giornata ricca di annunci... Ora è la volta di ASP.NET Futures: The Microsoft ASP.NET Futures May 2007 (“Futures”) release contains an early developer preview of features providing a wide range of new functionality for both ASP.NET and Silverlight™. The functionality in the Futures release includes early experimental versions of features currently being considered for future versions of ASP.NET and the .NET Framework. The Futures releases assume prior knowledge of the core features of ASP.NET including the previous ASP.NET AJAX Futures January CTP. Features in this release include ASP.NET Silverlight server controls, new functionality for ASP.NET AJAX Extensions, dynamic data...
The Microsoft Codename "Astoria" CTP toolkit enables developers to create and consume Data Services for the Web. These services expose application data over a simple HTTP interface that can be consumed by AJAX-based web sites and Rich Interactive Applications. [...] The goal of Microsoft Codename Astoria is to enable applications to expose data as a data service that can be consumed by web clients within corporate networks and across the internet. The data service is reachable over regular HTTP requests, and standard HTTP verbs such as GET, POST, PUT and DELETE are used to perform operations against the service....
Spell checker works in Source view, it is able to extract text from markup elements and use Office 2003 spell checker to check the text. Spell checker is able to handle entities to some extent (they are considered whitespace for now). It is also able to spell check values of attributes that typically contain human readable text. Tutti i dettagli e il link per il download sono disponibili in questo post.
FlashControl is a free ASP.NET 2.0 server control which allow you to add swf Flash movies in your ASP.NET 2.0 projects. As any WebControl, you can add FlashControl in Visual Studio Toolbox, and just drag and drop it in your ASP.NET web pages! Il controllo può essere utilizzato anche a scopo commerciale. Tutti i dettagli sono disponibili sul sito web http://www.flash-control.net/default.htm.
Qualche giorno fa avevo parlato di BlogEngine.NET, un motore di blog interamente realizzato in ASP .NET e distribuito secondo la Microsoft Permissive License. Questa mattina l'amico Marco Ragogna mi ha fatto notare che il progetto si è spostato su CodePlex. Il suo nuovo indirizzo è: http://www.codeplex.com/blogengine.
E' stata rilasciata la MSDN Library di Aprile 2007, liberamente scaricabile dal sito Microsoft. Questa nuova versione comprende, tra le altre cose, anche la documentazione relativa al Service Pack 1 di Visual Studio 2005 e a SQL Server 2005 Compact Edition. Da sottolineare che, finalmente, essa è disponibile come ISO di un DVD (2,19 GB), a differenza di quanto avveniva con le release precedenti, che erano distribuite come immagini di 3 CD-ROM.
Sappiamo tutti che, nonostante i vari Service Pack e gli aggiornamenti per Windows Vista, la compatibilità di Visual Studio con questo sistema operativo non è totale. In larga parte si tratta comunque di problemi secondari o che possono essere aggirati avviando l'IDE come amministratore. Altri inconvenienti, invece, sono più "rognosi". Uno di questi si verifica quando si crea un programma di setup comprendente il modulo che scarica e installa automaticamente i prerequisiti dell'applicazione. In questo caso, infatti, viene creato un file di nome SETUP.EXE contraddistinto dalla classica icona con lo scudo, ovvero che richiede i diritti di amministratore per essere...
Come si legge in questa pagina, la versione Beta 1 di Orcas è prevista per il secondo quadimestre del 2007, mentre la Beta 2 dovrebbe essere disponibile poco dopo la metà dell'anno. Non è stata ancora definita la data di rilascio della RTM. Nella stessa pagina si fa anche riferimento alla versione di Visual Studio Team System successiva ad Orcas, il cui nome in codice è Rosario, da Microsoft descritta come una exciting release...
Dal sito di Microsoft è possibile scaricare gratuitamente l'e-book Introducing Microsoft Code Name 'Atlas' for AJAX Developer del mitico Dino Esposito. Si tratta di un libro di Agosto 2006, quindi parecchie delle cose descritte non sono più valide con la RTM di AJAX, ma ritengo comuque che sia un buon punto di partenza. Per il download diretto fare clic qui.
Sul sito http://www.codeplex.com/reflectoraddins è disponibile una nutrita raccolta di add-in per Reflector. La lista è gestita dallo stesso autore di questo indispensabile tool. Le estensioni più interessanti, secondo me, sono le seguenti: SQL2005Browser: This add-in allows to browse .NET assemblies stored in SQL Server 2005 databases BamlViewer: Load BAML resources (WPF) and render in XAML format CodeSearch: This add-in allows searching for strings and regular expressions in disassembled code
Come sempre avviene in occasione del rilascio di ogni CTP di Sandcastle, il programma Sandcastle Help File Builder è stato aggiornato e ora supporta le nuove funzionalità introdotte con la CTP di Marzo 2007.
E' stata rilasciata ieri la versione 4.0 del Visual Studio 2005 SDK. Nel pacchetto è incluso anche Sandcastle. Per maggiori informazioni e per il download fare clic qui.
Come la maggior parte dei programmatori .NET, ritengo che Reflector sia un tool assolutamente indispensabile. Oggi ho scaricato la nuova release: l'applicazione conferma le caratteristiche che l'hanno resa celebre, anche se ho riscontrato un piccola pecca relativa alla compatibilità con Windows Vista. Il programma, infatti, non richiede i diritti di amministratore, ma salva la sua configurazione nella stessa cartella in cui si trova l'eseguibile: qualora quest'ultimo sia stato copiato nella directory C:\Programmi (come ho fatto io), poiché su di essa non ha i diritti di scrittura, entra in azione il sistema di virtualizzazione del file system, che redirige il salvataggio del file...
SharpToolbox è un sito che raccoglie una grande quantità di tool e di librerie per .NET. Da poco è stato raggiunto il traguardo dei 1000 contributi disponibili (mentre sto scrivendo questo post siamo a quota 1004).
Questo interessante articolo pubblicato su CodeProject spiega come realizzare in 7 notti una Home Page in stile Google IG, ovvero un'interfaccia multi-pagina con possibilità di aggiungere ad essa widget che possono essere spostati tramite drag & drop: Il progetto utilizza ASP .NET, AJAX, .NET 3.0, Linq, DLinq and XLinq. Per osservare il sistema in azione potete visitare il sito http://www.dropthings.com.
In questo post Scott Guthrie illustra alcune delle principali novità che troveremo in Orcas. L'articolo è corredato da un gran numero di screenshot che mostrano la CTP di Febbraio in azione.
Modificando opportunamente il file web.config è possibile specificare quale pagina deve essere visualizzata quando si verificano errori durante l'esecuzione di un'applicazione ASP .NET. Questo articolo spiega in dettaglio tutti i passaggi della procedura; gli esempi inclusi sono disponibili sia per VB .NET sia per C#-
Sul sito http://www.regexlib.com è disponibile una grande raccolta di espressioni regolari pronte all'uso. Attualmente l'archivio ne comprende quasi 1500, facimente accessibili grazie ad una comoda funzione di ricerca.
Qualche mese fa avevo parlato dell'add-in per Visual Studio 2005 che consente di avviare Esplora risorse facendolo puntare direttamente alla cartella che contiene la soluzione o il progetto selezionato. In realtà una funzionalità simile è disponibile anche in Visual Studio: dopo aver aperto il file di un progetto, facendo clic destro sul tab corrispondente, tra i comandi visualizzati c'è anche Open Containing Folder:
Durante l'utilizzo di Visual Studio, è normale aprire numerose finestre, per visualizzare il codice sorgente, il designer, per accedere a TFS, ecc. Per chiuderle tutte velocemente, quando l'area di lavoro diventa troppo "affollata", può essere comodo aggiungere il comando Close All Documents alla barra degli strumenti: In questo modo, un semplice clic e ritorna l'ordine
Dino Esposito ci aveva annunciato l'imminente rilascio, infatti poco fa è stata resa disponibile la versione definitiva di ASP.NET AJAX Extensions 1.0. Maggiori informazioni sono disponibili sul sito http://ajax.asp.net/, mentre per il download diretto fare clic qui.
Sapphire è il nome in codice del nuovo Web Form Designer che sarà incluso in Visual Studio Orcas. In questo post è possibile trovare numerose informazioni a riguardo e alcuni screenshot che mostrano Sapphire in azione (clicca sull'immagine per ingrandirla): Alcune delle principali caratteristiche del nuovo strumento sono: 1. New designer based on the same technology as Expression Web. 2. Extensive CSS tools. 3. Support for nested master pages. 4. Split view. 5. Ability to access all tools that ASP.NET controls provide in Source view. 6. Intellisense and validation in <style> blocks. 7. Support for master pages in web.config. 8. Significantly improved performance...
DocProject è un add-in che rende disponibili le funzionalità di Sandcastle all'interno dell'editor di Visual Studio 2005. La Release Candidate rilasciata ieri supporta progetti C#, Visual Basic .NET e ASP .NET.
Ogni volta che reinstallo Visual Studio me ne dimentico... Se si vuole visualizzare automaticamente la finestra Output quando si avvia la compilazione di un progetto, bisogna spuntare l'opzione evidenzata: Nota: lo screenshot è stato preso utilizzando lo Snipping Tool di Windows Vista
In questo post Heath Stewart cerca di riassumere i problemi più comuni che si possono riscontrare durante l'installazione del Service Pack 1 di Visual Studio 2005. Per ognuno di essi è fornita anche una serie di link di approfondimento.
Enrich Your HTML Applications with the WPF/E CTP è il titolo di uno degli articoli che campeggiano nella Home Page di MSDN: WPF/E is a small-client runtime for AJAX developers and designers. Find out how to create a cross-platform, interactive Web experience by blending HTML, UI, dynamic vector graphics, animation, and media into your client application. Il link rimanda ad un articolo, intitolato Getting Started with "WPF/E" (Code Name), che mostra come utilizzare Microsoft Expression Graphic Designer per creare interfacce XAML in WPF/E. Spiega anche come creare progetti "WPF/E" con Visual Studio 2005 e come configurare Internet Explorer e Firefox in...
In questa pagina si può trovare un altro articolo che spiega come far funzionare correttamente Visual Studio 2005 su Windows Vista. Seguendo i suggerimenti riportati sono riuscito ad ottenere un ambiente di sviluppo funzionante correttamente, anche se rimane qualche problemino che spero venga risolto con l'Update del Service Pack 1.
Negli ultimi mesi ho cercato di scrivere codice .NET rispettando le Naming conventions suggerite per i vari linguaggi. Oggi ho trovato un free ebook chiamato .NET Coding Guidelines, che credo mi sarà molto utile: .NET Coding Guidelines is a 100+ page ebook (PDF) on naming conventions, best coding practices and patterns written by the industry expert Steven Sartain and delivered to you for Free by SubMain. The document covers: Naming Guidelines Class Member Usage Guidelines Guidelines for Exposing Functionality to COM Error Raising & Handling Guidelines Array Usage Guidelines Operator Overloading Usage...
Questa pagina della Knowlege Base di Microsoft fornisce una panoramica su SQL Server 2005 Compact Edition RC1 e sulle note da tenere presente quando viene installato in un sistema con Visual Studio 2005 e SQL Server 2005.
Ecco qualche lettura per iniziare l'anno nuovo: What Every Dev Must Know About Multithreaded Apps Discover the Design Patterns You're Already Using in the .NET Framework (questo mi è stato utilissimo!) ADO.NET and System.Transactions
This article discusses:
Common authentication techniques for ASP.NET applications
The Membership API and provider model in ASP.NET 2.0
Role-based security and authorizationClicca qui per leggere.
Questo articolo fornisce un'introduzione a NGen e spiega come utilizzarlo per migliorare le performance di un'applicazione .NET.
Code owners previously using the InvariantCulture for string comparison, casing, and sorting should strongly consider using a new set of String overloads in Microsoft .NET 2.0. Specifically, data that is designed to be culture-agnostic and linguistically irrelevant should begin specifying overloads using either the StringComparison.Ordinal or StringComparison.OrdinalIgnoreCase members of the new StringComparison enumeration. These enforce a byte-by-byte comparison similar to strcmp that not only avoids bugs from linguistic interpretation of essentially symbolic strings, but provides better performance.
Questo articolo è un po' vecchiotto, ma lo cito qui perché qualche giorno fa mi ha aiutato a risolvere un problema con cui stavo...
Da un paio di giorni è disponibile per il download la versione beta dell'aggiornamento per il Service Pack 1 di VS2005, il cui rilascio è previsto entro l'uscita a scaffale di Windows Vista e che dovrebbe risolvere i problemi che ancora affliggono Visual Studio quando è in esecuzione sul nuovo sistema operativo.
Ieri, alle ore 17.05 nel Dipartimento di Informatica dell'Università di Pisa, sono stato nominato Dottore Magistrale in Tecnologie Informatiche dopo aver discusso una tesi dal titolo "Progettazione e sviluppo di un framework per applicazioni mobili location-aware".
Volevo rendervi partecipi della mia gioia, anche perché alcuni spunti per il lavoro che ho svolto mi sono venuti proprio leggendo gli articoli pubblicati su questo blog!
Il 10 Dicembre scorso è stata rilasciata la CTP di Dicembre 2006 di Sandcastle. Queste le novità:
Sandcastle installer is now setting the DXROOT environment variable to the installation directory. All config files new has a DXROOT environment variable.
MrefBuilder now Exclude (Ripping) Namespace, types and members. Exclude (Ripping) Namespace, types and members are configured through MrefBuilder.config. This issue was discussed at http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=935512&SiteID=1.
The following HTML tags will pass through unchanged just like all the other HTML tags:
<br/>, <hr/>, <h1></h1>, <h2></h2>, <h3></h3>, <h4></h4>, <h5></h5>, <h6></h6>, <pre></pre>, <div></div>, <span></span>, <blockquote></blockquote>, <abbr></abbr>, <acronym></acronym>.
Support for separate...
Su questa pagina è stato pubblicato un comunicato relativo ad una vulnerabilità che affligge le seguenti versioni di Visual Studio: Standard Edition Professional Edition Team Suite Team Edition for Developers Team Edition for Architects Team Edition for Testers La vulnerabilità è considerata critica. Per fortuna è già stato reso disponibile un aggiornamento: http://www.microsoft.com/downloads/details.aspx?FamilyId=C2682C53-8E9A-4C7D-B782-BE78512DCBFA.
Segnalo questo interessante articolo che fornisce un'introduzione al Microsoft Intermediate Language (IL): http://www.devcity.net/Articles/54/msil_1_intro.aspx
“WPF/E” is the Microsoft solution for delivering rich, cross-platform, interactive experiences including animation, graphics, audio, and video for the Web and beyond. Utilizing a subset of XAML (eXtensible Application Markup Language)-based Windows Presentation Foundation technology, “WPF/E” will enable the creation of content and applications that run within multiple browsers and operating systems (Windows and Macintosh) using Web standards for programmability. Consistent with Web architecture, the XAML markup is programmable using JavaScript and works well with ASP.NET AJAX. Broadly available for customers in the first half of 2007, “WPF/E” experiences will require a lightweight browser plug-in made freely available by...
Sul sito PlanetSourceCode è disponibile un esempio che mostra come creare un Web custom control per ASP .NET in grado di visualizzare file multimediali. I dettagli e il download sono disponibili qui.
Dal momento che Internet Explorer 6 e 7 non possono convivere sulla stessa macchina e Windows Vista include la versione 7 del browser, Microsoft ha reso disponibile un download di nome Internet Explorer 6 Application Compatibility VPC Image, ovvero un hard disk virtuale per Virtual PC 2004 o superiore che contiene una versione già attivata di Windows XP Service Pack 2 con Internet Explorer 6. In questo modo, chi è già passatto alla nuova release, oppure sta utilizzando Vista, ha a disposizione un ambiente che può rivelarsi utile, ad esempio, per verificare l'output grafico di una pagina web sulle due versioni del browser.
L'hard...
Sul sito CodeProject è stato recentemente pubblicato un add-in per Visual Studio 2005 che aggiunge al menu contestuale del Solution Explorer un comando con cui è possibile avviare Esplora risorse facendolo puntare dirattemente sulla cartella che contiene la soluzione o il progetto selezionato. E' molto semplice, ma nello stesso tempo estramamente utile. Per i dettagli e per il download, fare clic qui.
La fase di beta testing del Service Pack 1 di Visual Studio 2005 si è conclusa il 30 Ottobre scorso. L'aggiornamento è comunque ancora disponibile sul sito Microsoft a questo indirizzo. Il rilascio ufficiale del SP1 è previsto per il mese di Dicembre.
Interessante articolo sulla sicurezza del codice, pubblicato su MSDN Magazine di Novembre.
Da qualche giorno è disponibile la CTP della versione 4 - Novembre 2006 dell'SDK di Visual Studio 2005. Sul blog di Aaron Marten è disponibile l'elenco delle principali novità:
ToolboxControlsInstaller Package Redistributable
Controls sample (which demonstrates using the above ToolboxControlsInstaller)
Sample showing how to use the VsIdeHostAdapter (look in the Example.EditorWithToolbox\IntegrationTests folder)
Sandcastle now shipping in the VS SDK
New Setup UI
Setup MSI Caching (helps in uninstall/repair scenarios)
Better behavior under Vista/UAC
Maggiori informazioni sono disponibili direttamente alla fonte.
Forse molti di voi lo conoscono già... Io l'ho trovato per caso oggi pomeriggio, e sono rimasto impressionato dalla sua qualità: sto parlando di FCKeditor:
This HTML text editor brings to the web many of the powerful functionalities of desktop editors like MS Word. It's lightweight and doesn't require any kind of installation on the client computer.
Un'altra nota positiva è che si tratta di un progetto open-source e dal sito è possibile scaricare anche il codice sorgente del controllo. E' realizzato in Javascript, ma è disponibile un class library C# che consente di utilizzarlo con semplicità anche nelle applicazioni ASP .NET. Tutti i...
A quanto pare qualcosa si sta muovendo...
This project is a Fork of NDoc it was created to add VS2005 support to NDoc. The Source is developed in and intended for use with Visual Studio.net 2005. The Application is intended for use on Microsoft's .Net Framework v.2.0
Attualmente il programma, ospitato su SourceForge, è in fase di beta testing. Ho fatto qualche velocissima prova, e mi sembra che funzioni correttamente... Nei prossimi giorni farò qualche test più approfondito, spero proprio di aver trovato il tool che cercavo! Il progetto è raggiungibile qui.
Lo scorso 7 ottobre è stata rilasciata la nuova CTP di Sandcastle. Il Wiki del programma è disponibile qui, mentre per il download fate riferimento a questa pagina. A giudicare dai bug fix di questa versione, sembra proprio che a breve potremmo utilizzare un prodotto molto ben fatto...
A distanza di 2 giorni da questo annucio, anche il programma Sandcastle Help File Builder è stato aggiornato per supportare la nuova relase. L'autore ha deciso di spostare il progetto su CodePlex, per cui adesso la pagina di riferimento è http://www.codeplex.com/Wiki/View.aspx?ProjectName=SHFB.
Forse perché mi ci sono avvicinato tardi, fatto sta che ho ancora qualche dubbio sui nuovi strumenti Microsoft per gli sviluppatori (.NET 3.0, Orcas, LINQ, ADO .NET vNext, e chi più ne ha più ne metta...). Sul sito www.larkware.com ho trovato il link a questo post che mi ha aiutato a fare un po' di chiarezza.
Theme Switcher Control (demo online) This free ThemeSwitcher control allows the user to choose one of the available themes (ASP.NET 2.0). The theme is applied automatically to all ASP.NET pages in the web site, and is made persistent through the use of a cookie. ASP.NET Popup Control (demo online) This control imitates MSN Messenger alert, but it is designed for use in a web page. Graphical appearance of this control can be completely changed by using one of predefined styles or by modifying all colors used on the control. Control supports Drag&Drop, so user can move...
Poche ore fa l'autore del tool Sandcastle Help File Builder ha postato un aggiornamento del programma sul sito di Code Project. Non ho ancora avuto modo di provarlo, ma spero risolva i problemi che avevo riscontrato con la versione precedente. In attesa che Microsoft rilasci la versione definitiva di Sandcastle e fornisca uno strumenti visuale per il suo utilizzo...
Ho una delle funzionalità che hanno semplificato maggiormente la mia vita di sviluppatore sono gli Application and User Settings introdotti con .NET 2.0: su questa pagina c'è una breve introduzione all'argomento.
Purtroppo sappiamo tutti che il progetto NDoc è stato abbandonato dal suo autore. In attesa dei prossimi sviluppi di Sandcastle, sulla pagina http://jonas.lagerblad.com/blog/?p=5 ho trovato una versione di NDoc modificata perché funzioni correttamente con il .NET Framework 2.0. Fin qui niente di nuovo... La novità è che essa fornisce anche un supporto per i generics, seppure parziale.
Non è proprio la soluzione definitiva per la documentazione del codice, anche perché in alcuni casi la creazione della guida fallisce. Ad ogni modo, è comunque un progetto interessante, che può servire da soluzione temporanea, in attesa di buone notizie da Microsft :-) Per inciso, nella...
Sulla pagina http://www.codeproject.com/useritems/SandcastleBuilder.asp è stato recentemente pubblicato un programma scritto in C# che consente di automatizzare la creazione di file di documentazione con Sandcastle. Oltre al programma di installazione, è disponibile anche il codice sorgente. Personalmente, non sono ancora riuscito a far funzionare il nuovo tool Microsoft... sarà che è solo una CTP, ma prima avevo problemi utilizzando la riga di comando, ora con questo programma Sandcastle si ferma per un'ora sulla scritta Building help topics, poi genera il messaggio di errore BUILD FAILED: input string was not in a correct format... Comunque attendo fiducioso la prossima release!
Virtual Earth is the mapping technology that powers local.live.com, the latest local search and mapping site from Microsoft. Virtual Earth™ technology was built by the same team that created MapPoint® 2006 and the MapPoint Web service. It is implemented using a mix of both server-side and client-side technologies that include ASP.NET, asynchronous JavaScript, and JavaScript Object Notation (JSON). You can build your own application or Web site that uses Virtual Earth mapping technologies by using the Virtual Earth map control, a JavaScript component that provides all the functionality you need to draw maps, search for locations, and get driving...
Segnalo un altro articolo di MSDN Magazine che ritengo particolarmente interessante: ASP.NET Atlas Powers the AJAX-Style Sites You’ve Been Waiting For. Come si intuisce dal nome, esso fornisce un'introduzione ad Atlas, l'implementazione del pattern AJAX secondo Microsoft:
Atlas, an extension of the .NET Framework 2.0, enables developers to more easily create rich, interactive Web sites that take advantage of both browser and server features.
powered by IMHO 1.3
Se un metodo di un Web Service lancia un'eccezione, al client viene ritornato un errore di tipo SoapException. Questo tipo di eccezione consente di specificare dettagliate informazioni sul problema, in modo che l'utente del web service, ad esempio, possa sapere cosa non ha funzionato. Tuttavia, per specificare queste informazioni all'interno del messaggio SOAP, è necessario costruire "a mano" il messaggio di risposta in XML. Fortunatamente, questo articolo spiega come utilizzare le SoapException lanciate da un Web Service e come passare informazioni sull'errore dal server al client, nel pieno rispetto dello standard. C'è anche il link ad un wrapper già pronto, ma purtroppo sembra...
In questi giorni ho avuto la necessità di creare un data layer per un'applicazione abbastanza complessa. Su consiglio di un mio professore universitario, ho provato RapTier. Dopo averlo scaricato e installato, sono rimasto sorpreso dalla sua potenza: Una volta specificato quale database utilizzare, è sufficiente premere un tasto per ottenere automaticamente un data layer (sono supportati sia C# sia VB .NET) che permette di manipolare le informazioni in pieno stile object-oriented.
Ad esempio, se il database contiene una tabella di nome Clients, RapTier genera una classe di nome ClientsCollection che al suo interno contiene tutti i metodi necessari per recuperare, aggiungere, modificare...
Ciao a tutti!
Con questo post inauguro ufficialmente il mio blog, che utilizzerò per condividere con quante più persone possibile le mie esperienze di programmatore .NET. Se qualcuno si ricorda di me, tempo fa (più o meno fino all'anno scorso), gestivo il sito L'angolo del programmatore VB, che con un certo rammarico ho deciso di abbandonare per mancanza di tempo. Ora però voglio riprendere a farmi sentire, sperando di poter dare qualche contributo utile a chi, come me, con l'informatica vive e si diverte :-)
Ci sentiamo presto su queste pagine!
|