Posted by dariosantarelli on June 23, 2008
Web Development Helper is a free browser extension for Internet Explorer that provides a set of tools and utilities for the Web developer, esp. Ajax and ASP.NET developers. The tool provides features such as a DOM inspector, an HTTP tracing tool, and script diagnostics and immediate window. Web Development Helper works against IE6+, and requires the .NET Framework 2.0 or greater to be installed on the machine.
Very cool
Posted in Web Development | 1 Comment »
Posted by dariosantarelli on June 22, 2008
If you are migrating your database across different platforms or applications, then you know that it can not be done by simple copy-and-paste operations. To forget about difficulties associated with database conversion, you should try ESF Database Convert. This wizard-based tool addresses almost any database conversion need. Advanced converting mechanisms of the tool provide smooth conversion directly from/to any of the following database formats: Oracle, MySQL, SQL Server, PostgreSQL, Visual Foxpro, FireBird, InterBase, Access, Excel, Paradox, Lotus, dBase, Text and others(e.g.: Access to Oracle, Oracle to SQL Server, SQL Server to MySQL, MySQL to PostgreSQL…). Also you can convert any format of a database with ODBC DSN.
ESF Database Convert includes the support of table CLOB/BLOB, Primary/Foreign Keys, Indexes, Auto-ID and maps table and field names/types in converting. It provides all the required conversion options, taking into account the peculiarities of both input and output database formats. You can convert data exactly the way you want it.
The tool comes with the batch conversion mode that can enhance productivity by speeding up the entire conversion process. Our users regularly convert multi-million records databases using our software.
Posted in Blogroll | Leave a Comment »
Posted by dariosantarelli on June 22, 2008
Here you can find an interesting diagram of programming languages history. Years go by, but surprisely you can see how apparently incompatible paths (OO and functional programming) are slowly fusing in time. For about 50 years, computer programmers have been writing code. New technologies continue to emerge, develop, and mature. Now there are more than 2,500 documented programming languages!
Here a preview

Moreover, O’Reilly has produced a poster called History of Programming Languages which plots over 50 programming languages on a multi-layered, color-coded timeline.
Posted in Programming | Leave a Comment »
Posted by dariosantarelli on May 9, 2008
Silverlight Spy provides detailed XAML inspection of any Silverlight application. It allows you to explore the UI element tree, monitor events, extract XAML, get and set object properties, view statistics and more. Nowadays it supports Silverlight 2.0 (Beta 1).
You can download it here.

Posted in Silverlight | Leave a Comment »
Posted by dariosantarelli on April 16, 2008
I was looking for some resources in order to learning something more about the .NET 3.5 extensions… after a little search I’ve discovered that just few days ago Microsoft has published the .NET 3.5 Enhancements Training Kit:
The .NET Framework 3.5 Enhancements Training Kit includes presentations, hands-on labs, and demos. This content is designed to help you learn how to utilize the .NET 3.5 Enhancement features including: ASP.NET MVC, ASP.NET Dynamic Data, ASP.NET AJAX History, ASP.NET Silverlight controls, ADO.NET Data Services and ADO.NET Entity Framework.
What can I say… Happy download
Posted in .NET, AJAX, ASP.NET, Microsoft Technology, Web 2.0, Web Development | Leave a Comment »
Posted by dariosantarelli on March 17, 2008
On CodePlex you can find FluidKit, a WPF library containing a powerhouse of controls, frameworks, helpers, tools, etc. for productive WPF development. Here is the introductory blog post.
Available controls:
- ImageButton
- DragDropManager
- GlassWindow
- BalloonDecorator
- ItemSkimmingPanel + SkimmingContextAdorner
- PennerDoubleAnimation
- ElementFlow ( Very powerful ): allows you to display your items in different carousel like modes
Posted in .NET, Microsoft Technology, WPF | Leave a Comment »
Posted by dariosantarelli on March 14, 2008
The patterns & practices Enterprise Library 3.1 is a library of application blocks published for Visual Studio 2005 and designed to assist developers with common enterprise development challenges. Application blocks are a type of guidance, provided as source code that can be used “as is,” extended, or modified by developers to use on enterprise development projects. This release of Enterprise Library includes application blocks for Caching, Cryptography, Data Access, Exception Handling, Logging, Policy Injection, Security and Validation.
In this post you can find how to to get the integrated tool to work in Visual Studio 2008. Simply you have to run a registry script that will change the keys where VS looks to load the integrated tool package. After you run the script, you will need to run devenv /setup from the Visual Studio 2008 command prompt. You can download the file from the EntLibContrib project on CodePlex.
P.S.: If you already have the Enterprise Library 3.0 installed, you must uninstall it before installing the Enterprise Library 3.1.
Posted in .NET, Microsoft Technology, Programming | Leave a Comment »
Posted by dariosantarelli on March 1, 2008
LINQ’s query operators are implemented in .NET Framework 3.5. And here lies a difficulty: you might be unsuccessful in demanding that all your customers install Framework 3.5 right away. So what does this mean if you want to code in C# 3.0 and write LINQ queries?
You can use LINQBridge, a reimplementation of all the standard query operators in Framework 3.5’s Enumerable class by Joseph Albahari.
- LINQBridge is designed to work with the C# 3.0 compiler, as used by Visual Studio 2008.
- LINQBridge comprises a “LINQ to Objects” API for running local queries. (It doesn’t include an implementation of LINQ to SQL, nor LINQ to XML).
- LINQBridge also includes Framework 3.5’s generic Func and Action delegates, as well as ExtensionAttribute, allowing you to use C# 3.0’s extension methods in Framework 2.0. In fact
- LINQBridge lets you use nearly all of the features in C# 3.0 with Framework 2.0—including extension methods, lambda functions and query comprehensions. The only feature it does not support is compiling lambdas to expression trees (i.e., Expression<TDelegate>).
Posted in .NET, C#, Microsoft Technology, Programming | Leave a Comment »
Posted by dariosantarelli on January 20, 2008
In his blog, Scott Guthrie announces the ability for .NET developers to download and browse the source code of the .NET Framework libraries, and to easily enable debugging support in them. Specifically, now we can browse and debug the source code for the following libraries:
- .NET Base Class Libraries (including System, System.CodeDom, System.Collections, System.ComponentModel, System.Diagnostics, System.Drawing, System.Globalization, System.IO, System.Net, System.Reflection, System.Runtime, System.Security, System.Text, System.Threading, etc).
- ASP.NET (System.Web, System.Web.Extensions)
- Windows Forms (System.Windows.Forms)
- Windows Presentation Foundation (System.Windows)
- ADO.NET and XML (System.Data and System.Xml)
Moreover, in this great post, Shawn Burke shows us how to configure Visual Studio 2008 to Debug .NET Framework Source Code…. VERY INTERESTING!
Posted in .NET, Microsoft Technology | 1 Comment »
Posted by dariosantarelli on January 19, 2008
Vista provides developers with the new DWM based aero interface. A new set of thumbnail API’s can be used to access some of this new technology. On codeplex we can find a virtual desktop program takes advantage of this new API and uses some tricks of its own to provide a powerful virtual desktop manager with a full screen thumbnail based preview. You can have as many desktops as you want and can seamlessly switch between them.
IMPORTANT: Vista/XP Virtual Desktops provides support for XP as well, although window previews are not live since XP doesn’t have DWM.
Here some cool features:
Full screen desktop/window manager/preview with full drag and drop managing
Desktop switch indicator
An infinite number of desktops
Watch the windows move in real time as you drag them around in the window manager
Multiple monitor support
Window menus
Tray icons for each desktop
Per-desktop backgrounds
Configurable colors, fade speeds, hotkeys, etc.
Uses Vista’s live thumbnails
XP support
And much more!
Here the codeplex project!
Posted in Microsoft Technology | Leave a Comment »
Posted by dariosantarelli on December 20, 2007
The ASP.NET 3.5 Extensions Preview is a new release that provides new functionality being added to ASP.NET 3.5 and ADO.NET in 2008. This release delivers a set of new features that target:
- MVC support
- Entity Framework
- ADO.NET Data Services
- ASP.NET Dynamic data
- TDD (Test Driven Development)
- Rich Clients creation (Ajax and Silverlight controls for ASP.NET )
I’m particularly interested in ASP.NET MVC support to the existing ASP.NET 3.5 runtime, because it enables developers to more easily take advantage of design patterns. Benefits include the ability to achieve and maintain a clear separation of concerns, as well as facilitate test driven development (TDD).
A great new feature is that the designer now supports the Controllers. Moreover, by default our project contains structured folders like Content, Controllers, View. COOL!!!
Posted in ASP.NET, Microsoft Technology, Web Development | Leave a Comment »
Posted by dariosantarelli on November 21, 2007
A very useful feature included in VS2008 concerns the possibility of embedding a manifest resource which specifies UAC options in applications running on Windows Vista. First, you can create a manifest file by adding an “Application Manifest File” Item to your project (default name: app.manifest), then you can set it through the Application Tab in the Project Properties.
If you want to change the Windows User Account Control level in your manifest file, all you need is to set the value of the level attribute of the requestedExecutionLevel node with one of the following:
- asInvoker (default): the application will run using the current Windows user provileges
- requireAdministrator: the application requires an Administrator user
- highestAvailable: highest privileges for the current user will be used
Posted in .NET, Microsoft Technology, Programming | 3 Comments »
Posted by dariosantarelli on November 8, 2007
If you are looking for a smart way to encrypt/decrypt sensitive data in memory in order to make them unreadable even in malicious memory dumps, maybe you need to use the ProtectedMemory class (namespace System.Security.Cryptography). This class is a managed wrapper included in the DPAPI (Data Protection API) and it works in the same way as ProtectedData (a similar class indeed used to persist encrypted strings in file/database): it exposes two static methods, Protect and Unprotect, which allow you to encrypt/decrypt strings in memory. The only requirement you have to consider in order to avoid a CryptographicException is about using 16-bytes blocks for computing encrypted/decrypted data. For example, the following code shows how to protect/unprotect a sensitive string in memory during a process execution:
Here the output:
Before Protect: xxxxxxxxxxxxxxxx
After Protect: 7j??‼8y_??PQ<?¶-
After Unprotect: xxxxxxxxxxxxxxxx
Some further considerations:
- The Protect()/Unprotect() method works directly on the original data, not on a copy. So, we don’t need to explicitly destroy our sensitive strings after the use.
- Many people use SecureString, a more intuitive class using ProtectedMemory to automatically encrypt strings. A SecureString can be modified till the MakeReadOnly() method call and can be programmatically disposed. Finally, its MemoryProtectionScope is SameProcess: a SecureString can’t be used in CrossProcess and SameLogon scenarios, in which there’re multiple applications running in different processes (CrossProcess) and allowing data encryption/decryption to the same Windows user (in particular cases, consider the impersonation technique).
- I’ve noticed some strange behaviours by randomly analyzing the memory dump file after invoking the Protect() method on a string: sometimes the text I’d like to protect appears as clear text…mmmm…. Does Windows operate a swap on file system before data encryption? If this is a possibility, are my efforts unuseful?
Posted in .NET, C#, Programming | 1 Comment »
Posted by dariosantarelli on October 22, 2007
Have you ever seen an hyperbolic tree in javascript?
Here you can find an interesting showcase description. Moreover, there’re useful informations to integrate it in your web apps. I don’t know if it’s the best solution to display large amount of inter-related data, but surely the result is very amazing!!!
P.S.: It seems not to work fine in IE
, but greatly in Firefox and Safari.

Posted in Web Development | Leave a Comment »
Posted by dariosantarelli on October 19, 2007
Today I’ve installed LINQ samples for Visual Studio 2008 Beta 2 and immediately noticed two folders containing two visualizers named ExpressionTreeVisualizer and SqlServerQueryVisualizer. In this post you can find an explanation about using them in debugging LINQ code. Just a question: why don’t they have been included in the Orcas default installation?
Posted in .NET, Microsoft Technology | Leave a Comment »