agosto 2007 Blog Posts
Component Factory ha rilasciato la versione 2.6 del Krypton Toolkit. Queste le novità: Toolkit Change Highlights KryptonCheckBox control added KryptonRadioButton control added KryptonDataGridView control added ToolTips added for button specs Il download è disponibile qui. Technorati tags: Programming, Updates
Gli oggetti inseriti in un progetto di setup (output, chiavi di registro, custom action, ecc.) dispongono di una proprietà di nome Transitive. Essa, tuttavia, ha un significato completamente diverso da quello che il suo nome lascerebbe intuire. Come si legge in MSDN, infatti: Determines whether the installer will reevaluate the Condition property for a selected folder, file, registry key, or registry value when installing or reinstalling on a target computer. In altre parole, se la proprietà Transitive per un certo oggetto vale true, la relativa proprietà Condition sarà rivalutata ad ogni installazione o reinstallazione sul medesimo computer. In caso...
In realtà, più che una errata corrige questa è una imprecisione... Nel capitolo 15, dedicato al Deployment, si dice che utilizzando la variabile VersionNT nella proprietà Condition, disponibile per i vari oggetti di un Setup project, è possibile realizzare installazioni condizionali basate sulla versione del sistema operativo. Per come è presentata, sembra che con questa variabile si possa verificare la versione di ogni sistema operativo Microsoft. In realtà, essa è valida solo per i sistemi operativi della famiglia NT. Nel caso di Windows 98/ME, invece, si deve utilizzare Version9X (il cui valore è calcolato nello stesso modo di VersionNT, ovvero MajorVersion...
Come si legge qui, sul sito Microsoft Connect è disponibile la versione beta di Windows Installer 4.5. Prima di effettuare il download è necessario registrarsi, seguendo una procedura alwuanto macchinosa disponibile a questo indirizzo. Technorati tags: Programming, Updates
Il controllo DataGridView può essere associato ad un'origine dati seguendo diverse modalità. I seguenti passaggi producono lo stesso risultato risultato finale, ovvero quello di visualizzare i dati di un DataTable all'interno della griglia: Impostare la proprietà DataSource su un DataTable; Impostare la proprietà DataSource su un DataSet e la proprietà DataMember su una tabella contenuta nel DataSet; Impostare la proprietà DataSource su una DataView; Impostare la proprietà DataSource su una BindingSource. Technorati tags: Certification, .NET
A questo indirizzo è disponibile un documento che riassume le linee guida da seguire nello sviluppo di Gadget per la sidebar di Windows Vista. Attualmente il documento è ancora in versione preliminare.
Technorati tags: Windows
Anche se ormai è iniziato il conto alla rovescia per SQL Server 2008, Microsoft non dimentica le versioni precedenti: è stata infatti rilasciata una nuova versione del Books Online per SQL Server 2000: nonostante sia indicato come June 2007 Update, in realtà il download è stato reso disponibile il 20 agosto. Leggendo le note contenute in questa pagina, si scopre che SQL Server 2000 Books Online non è supportato da Windows Server 2008 e Windows Vista.
Technorati tags: SQL Server, Updates
A pagina 581 viene mostrato come accedere agli Application Settings. Nel testo si dice che in C# si deve usare l'oggetto Properties.Settings.Default, tuttavia nell'esempio di codice sottostante possiamo trovare un riferimento a Properties.Settings.DefaultSettings, che non esiste. A pagina 631-632 sono riportati esempi che mostrano come impostare un'icona per uno User Control. E ancora una volta si trova un errore dovuto al copia/incolla: nelle parti dedicate a C#, gli esempi che recuperano il tipo di un oggetto utilizzano GetType, che però è un metodo di Visual Basic .NET, non di C#: al suo posto, si deve ricorrere all'operatore typeof....
Questa mattina nella mia mailbox ho trovato una lettera di Microsoft Connect con il seguente messaggio: You are invited to apply for participation in .NET Micro Framework V2.0 SP1 Beta program on the Microsoft Connect Web site Ho subito fatto clic sul link contenente l'invito e ho provveduto a scaricare il nuovo framework: il .NET Micro Framework 2.0 SP1 Beta è stato rilasciato il 21 agosto scorso. Sono proprio curioso di provarlo Technorati tags: .NET Micro Framework, Updates
A pagina 544 si dice che, per impostare un form come figlio di un form MDI, è necessario impostare la sua proprietà MdiParent su true. In realtà, MdiParent non è di tipo booleano, ma contiene un riferimento al form padre. L'esempio di codice successivo, invece, è corretto. A pagina 545 viene presentato un esempio di codice che mostra come incollare nella TextBox attiva del form figlio corrente il contenuto degli Appunti. Sia il codice VB .NET sia quello C#, tuttavia, sono errati. Infatti, con riferimento alla versione C#, per recuperare la TextBox attiva si usa l'istruzione: TextBox...
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
Come si può leggere in questo post, Windows Home Server sarà rilasciato ufficialmente il 27 agosto. Sul sito di Connect, invece, è ancora disponibile la versione RC, che può essere scaricata per partecipare al concorso Code2Fame contest. Technorati tags: Windows Home Server
A pagina 503-504 si parla dei permessi necessari per stampare da un'applicazione .NET in un contesto Partial Trust. In particolare, si dice che per verificare i permessi di stampa è necessario utilizzare l'attributo PrintingPermissionAttribute. Tuttavia, l'esempio di codice fornito: [PrintingPermission(SecurityAction.RequestMinimum,
Level=PrintingPermissionLevel.AllPrinting)]
E' sbagliato. Il valore SecurityAction.RequestMinimum, infatti, si può usare solo a livello di assembly e il corrispondente attributo deve essere preceduto dalla parola chiave assembly:. Provando ad inserire questa riga di codice sopra la dichiarazione di una classe, come nell'esempio fornito...
Come si legge in questo post, da qualche giorno è stata rilasciata la versione 2.4.2 di NUnit. Le numerose novità introdotte sono riassunte qui.
UPDATE 18/08/2007 ORE 13.47. Alberto Dellagiacoma mi ha fatto notare che è già stata rilasciata la versione 2.4.3, che può essere scaricata da questa pagina (l'elenco degli aggiornamenti è disponibile qui).
Technorati tags: Tools, Updates
Nel capitolo 9 del Self-Paced Training Kit si parla, tra gli altri, dell'oggetto XmlReader. In particolare, a pagina 448 vengono presentati i metodi ReadInnerXml e ReadOuterXml. Nella seconda domanda della lezione, tali metodi si trasformano in proprietà, rispettivamente InnerXml e OuterXml, che però non esistono. Altri errori: a pagina 465-466 si dice che, per caricare un file XML in un XmlDocument, si può specificare, come argomento del metodo Load, uno Stream, il nome del file oppure oggetti di tipo TextWriter o XmlWriter. Tuttavia, trattandosi di operazioni di lettura, gli oggetti corretti sono TextReader e XmlReader. a pagina 466 si...
La mia opinione negativa sul Self-Paced Training Kit per l'esame 70-526 si fa ogni giorno più forte. Anche quando si parla degli oggetti DataView e DataRowView ci sono delle inesattezze. In particolare, a pagina 398, viene mostrato l'utilizzo del DataRowView: il codice riportato non mostra in che modo ottenere un oggetto di questo tipo a partire da un DataView, ma si limita ad utilizzare una variabile con nome DataRowView (quindi con lo stesso nome dell'oggetto che rappresenta, aumentando così la confusione). Inoltre, la sintassi dell'esempio C# è sbagliata, dal momento che vengono utilizzate le parentesi tonde, al posto di quelle quadre, per...
Ben 3 degli aggiornamenti per Windows Vista rilasciati ieri riguardano gli XML Core Services, per un totale di circa 6,5 MB. Questi update si vanno a sommare a quelli che erano già stati distribuiti nel mese di maggio 2007. Technorati tags: Windows, Updates
Per aggiungere un vinconlo di chiave esterna tra due DataTable, è possibile procedere in due modi: creare un oggetto di tipo ForeignKeyConstraint e aggiungerlo alla collezione Constraints della tabella, oppure utilizzare un overload del metodo DataTable.Constraints.Add, specificando direttamente tutti i parametri necessari. Nel primo caso, l'IntelliSense ci viene in aiuto suggerendo di specificare la parentColumn e la childColumn da mettere in relazione: questi nomi non hanno alcun riferimento alla terminlogia utilizzata nelle basi di dati, quindi ad un primo approccio non sembrano di molto aiuto. Al contrario, se si usa l'overload di DataTable.Constraints.Add, le colonne da mettere in relazione sono giustamente...
Questo non è propriamente un errore, quanto una imprecisione che si va ad aggiungere ad una lista, ahimé, già di per sé lunga... A pagina 373 si spiega come aggiungere righe ad un DataTable. In particolare, si dice che, nel caso di DataSet tipizzati, è necessario invocare il metodo NewRow del DataTable, quindi castare il DataRow così ottenuto verso il tipo specifico: NorthwindDataSet ds = new NorthwindDataSet();
NorthwindDataSet.CustomersRow row = (NorthwindDataSet.CustomersRow)ds.Customers.NewRow();
In realtà, se il DataSet è tipizzato, esso espone anche una serie di metodi che consentono di creare direttamente un DataRow con gli attributi corretti, senza necessità di eseguire cast....
Il servizio Windows Live Folders ha recentemente cambiato nome ed è diventato Windows Live SkyDrive. Le caratteristiche rimangono le stesse, ovvero uno spazio di archiviazione di 500 MB e la possibilità di accesso da un qualunque browser, supporto per SSL e drag & drop dei file. Purtroppo, anche il messaggio di errore quando mi loggo con il mio account è rimasto lo stesso: Non disponibile nel tuo paese di residenza ... Come ho detto la prima volta che ho segnalato la cosa (credo fosse maggio), io attendo, ma ora sono un po' meno fiducioso... Technorati tags: Windows, Live
La CTP di luglio del Visual Studio 2008 SDK aveva alcuni problemi nell'utilizzo della Visual Studio Shell. Per questa ragione, un paio di giorni fa è stato rilasciato un aggiornamento, pubblicato come Visual Studio 2008 SDK August 2007 CTP. Le uniche modifiche riguardano proprio la risoluzione dei problemi con la Shell di Visual Studio. Il download può essere effettuato qui. Fonte: Aaron Marten's WebLog PS: Sto facendo qualche esperimento grafico con il blog, quindi lo stile che vedete adesso potrebbe non essere quello definitivo Technorati tags: Visual Studio, Updates
Questa mattina, cercando di accedere al sito blogs.ugidotnet.org, ho ottenuto il messaggio di errore Service Unavailable. La stessa cosa capitava con il mio blog personale. Solo adesso sono riuscito ad accedere nuovamente al muro: ho notato che lo stile del mio blog è stato modificato, cosa che mi fa pensare ad un aggiornamento del blog engine effettuato questa mattina. Ora comunque controllo meglio Technorati tags: Blogging
Sono sempre in attesa di una mail da Connect che annunci la disponibilità di Windows Home Server RTM per i beta tester... Come si dice, la speranza è l'ultima a morire... Nel frattempo, segnalo un interessante add-in per Windows Home Server che consente di leggere la posta di Outlook da un qualunque browser. Il progetto è presentato su Coding4Fun ed è ospitato su CodePlex. Proprio ieri ne è stata rilasciata la versione 1.0. Technorati tags: Windows Home Server
Pare che nel Self-Paced Training Kit in preparazione all'esame 70-526 il copia/incolla sia stato veramente abusato. Pochi giorni fa ho segnalato i pasticci dovuti a questa tecnica nel capitolo 3, mentre oggi ho scoperto che il copia/incolla è responsabile anche delle imprecisioni di pagina 362, dove si fa confusione nelle spiegazioni dei valori consentiti per le proprietà MissingMappingAction e MissingSchemaAction del DataAdapter. Technorati tags: Certification
E' disponibile su CodePlex la versione finale dell'eBook Team Development with TFS Guide: This guide shows you how to make the most of Team Foundation Server. It starts with the end in mind, but shows you how to incrementally adopt TFS for your organization. It's a collaborative effort between patterns & practices, Team System team members, and industry experts. La guida può essere consultata online qui oppure scaricata in formato PDF a questo indirizzo. Technorati tags: Team Foundation Server
Se si imposta la proprietà PrimaryKey di un DataTable su una o più colonne, viene automaticamente aggiunto uno UniqueConstraint su tali colonne. Supponiamo che dt e col1 siano, rispettivamente, un DataTable e un DataColumn che fa parte della collezione Columns di dt; eseguendo il seguente codice: 1 dt.PrimaryKey = new DataColumn[] { col1 };
2 UniqueConstraint unique = new UniqueConstraint(col1);
3 dt.Constraints.Add(unique);
Si ottiene una DataException alla riga 3, perché il constraint è già stato implicitamente aggiunto quando è stata impostata la chiave primaria della tabella (riga 1). Se, invece, si cambia l'ordine di esecuzione, spostando in fondo la prima istruzione:
1 UniqueConstraint...
La nuova versione di SQL Server Compact 3.5 Beta 2, oltre ad essere inclusa in Visual Studio 2008, è da qualche giorno disponibile anche come download separato. Notare che il termine "Edition" sembra stato eliminato. Il download del runtime è disponibile qui, mentre a questo indirizzo sono disponibili i Server Tools.
Technorati tags: SQL, SQL Server, ADO .NET, Updates
A questo indirizzo è disponibile un add-on per Visual Studio 2008 che consente di sviluppare applicazioni Silverlight 1.1. Queste le caratteristiche principali: Visual Basic and C# Project templates Intellisense and code generators for XAML Debugging of Silverlight applications Web reference support Integration with Expression Blend Per utilizzarlo correttamente è necessario che nel sistema sia installato Silverlight 1.1 Alpha Refresh. Technorati tags: Silverlight, Visual Studio, Programming
Il capitolo 6 del Self-Paced Training Kit relativo all'esame 70-526 si intitola Working with Data in a Connected Environment. Esso spiega come utilizzare gli oggetti Connection, Command, Parameter, DataReader e Transaction per accedere ad una base di dati ed eseguire un'interrogazione specificando i parametri necessari, eventualmente all'interno di transazioni, locali o distribuite. Gli argomenti trattati sono quindi di fondamentale importanza e costituiscono la base per comprendere tutto il sistema di accesso ai dati implementato da ADO .NET. Nonostante questo, il capitolo in questione mi è sembrato abbastanza lacunoso e mal organizzato. Innanzi tutto, non fa alcun cenno al fatto che tutti i provider...
Questa sera, visitando la pagina Assistenza del sito di Alice, la mia attenzione è stata rapita dal seguente messaggio: E' in corso l'upgrade da Alice 4 Mega ad Alice 20 Mega. Cliccando su di esso, si può leggere che A partire dal mese di luglio, Telecom Italia ha iniziato l'upgrade, automatico e gratuito, di tutti i clienti Alice 4 Mega verso il profilo Alice 20 Mega. Per poter sfruttare la nuova velocità è necessario un modem ADSL2+. Speriamo che questa volta l'upgrade sia più indolore rispetto al passaggio dai 2 ai 4 Mega, durante il quale sono rimasto senza connessione...
The VSX team has just released the VS SDK July 2007 CTP and is now available for download for building extensions with Visual Studio 2008 Beta 2. Questa nuova versione supporta, tra le altre cose, lo sviluppo basato su Visual Studio 2008 Shell. In questo post sono contenuti tutti i dettagli. Technorati tags: Visual Studio, Updates
A pagina 203 si parla dei metodi esposti dall'oggetto System.Data.Common.DbConnection. In tale occasione, gli eventi pubblici e protetti vengono mischiati nella stessa tabella, senza fare distinzione tra essi. Inoltre, l'evento InfoMessage non fa parte dell'oggetto DbConnection, ma solo delle classi specializzate, come ad esempio SqlConnection. Technorati tags: Certification