June 2008 Entries

Composite Application Guidance for WPF 2008 RC1

Composite Application Guidance for WPF 2008 RC1 is now available for download. It has complete source code of the Composite Application Library and some quickstarts for you to get aquainted with this framework. "The Composite Application Guidance for WPF is designed to help you more easily build enterprise-level Windows Presentation Foundation (WPF) client applications. This guidance will help you design and build flexible composite WPF client applications – applications that use loosely coupled, independently evolvable pieces that work together within the overall application. This release is the first release of composite application guidance for WPF; based on your feedback, this guidance will...

Window.Open and Window.Opener - Passing values

Today I thought of writing a small Javascript intro article for newbies to explain how to pass values from a child window to its parent. When a browser window opens a new window through window.open, the window.opener reference property on the newly created window will hold a pointer to its parent window, or opener.   Read full article here.

Power Up: The game!

IBM, in partnership with TryScience/New York Hall of Science, recently launched Power Up, an interesting action/strategy game in which you, as an engineer, have the task to save the Helios planet from natural disaster.   Helios's atmosphere is choked with carbon dioxide and other greenhouse gases. The planet is heating up. Extreme weather threatens almost every ecosystem and all of its citizens, and storms have destroyed much of the renewable energy infrastructure including wind turbines, hydroelectric generators and solar towers. Fossil fuel plants work overtime to pick up the slack, pumping tons of poison gases into the air, and there are strange,...

The end of Windows XP

The drama.... The horror.... Yes... It's finally here. The D day. Or shall I say, XP Day. The day to the forced retirement of Microsoft's Windows XP is set for Monday but Microsoft has agreed to offer Windows XP updates and security patches until April 2014.   However, PC retailers such as Dell have pretty much stopped selling computers preloaded with the venerable OS. XP's disappearance has stirred much conversation. In fact, more than 200,000 people signed a petition to keep XP -- a campaign championed by our sibling publication InfoWorld. In the long run, though, Microsoft refused to yield to...

Code Refactoring Tip #2: Extract Interface

This is the second of a series of articles on some code refactoring features available on Visual Studio IDE. This second article shows the Interface generation feature available in the refactoring module.

Code Refactoring Tip: Field Encapsulation

Posted the first of a series of articles on some code refactoring features available on Visual Studio IDE. This first article explains and shows an example of the Encapsulate Field option.

WCF 3.5 Security Guidelines and Best Practices

You think your web services architecture is flawless? Think it's top notch performace? Think again, bacause it's 100% sure you'll find some flaw or room for improvement on your software in the following article.   I think you'll find this a treat... There's an interesting and quite usefull project on Codeplex regarding Windows Communication Foundation, specially Web Service development. WCF is Microsoft's solution for developing application based on a service-oriented architecture (SOA) methodology. It's a compilation of rules, best practices, guidelines, tips, proven practices, end-to-end applications scenarios, question & answers, videos and task-based how-to articles, all destined to perfect web service architectures and...

Microsoft strikes SQL Injection

Microsoft pushed a new pack into the frontlines to counter SQL injection attacks. This pack is freeware, and will be helping software development professionals and Web administrators in the fight agains the constant SQL injection media headlines. Microsoft published a Security Advisory providing information on ways in which they can mitigate and prevent and a Web site scanner called HP Scrawlr, was developed by Hewlett-Packard's Web Security Research Group in conjunction with Microsoft.    As you might have seen, there was a spate of such attacks in late April and it caused quite a few headaches for administrators. Remember that SQL injection attacks...

Entity Framework 2.0 development starts today

The Entity Framework team is starting, from today, to develop the new Entity Framework v2.0. They will be posting design notes, pattern and architecture discussions every time there's something to be decided, so that everyone's opinion and insight can be taken into consideration and everyone can contribute to achieve the best Framework possible, considering every real world scenario.   Their blog already has its first post and there's more to come. So, in order to be a alongside the project development and even be "part of project", stay tuned with this blog.

C# Documentation made easy

Instead or writing your XML documentation by hand, let GhostDoc do it for you. GhostDoc is a free add-in for Visual Studio that automatically generates XML documentation comments for C#. Either by using existing documentation inherited from base classes or implemented interfaces, or by deducing comments from name and type of e.g. methods, properties or parameters. Give it a try: GhostDoc Version 2.1.3 for Visual Studio 2005 WinXP, Win2k3, Vista For C#, support for VB.Net is "experimental" ...

Evaluating Nullable types

In this monday-morning article *sigh* I'll explain how to check if a type is a generic Nullable, and check its underlying type using NullableConverter.

A bit more about Windows 7

Over the past six months, we've been gifted with an early unauthorized test version of Windows 7 (6519 series), downloaded by many. This was one of the many test builds leaked from Microsoft in the last few months. People have been busy with it, looking for features, novelties and clues of how the next installment of the Windows client will be.   One of the things I've heard talk about is a new feature called “Windows Sensors”. It appears that in Windows 7 control panel, under "Hardware & Sound" (next to other options like SlideShow, Tablet PC Settings and Game Controllers)...

Code execution vulnerability found in Firefox 3

It took 5 hours after the official release of the latest Mozilla’s flagship browser, Firefox 3, for an unnamed researcher to find its first opening... He has sold the discovery of a critical code execution vulnerability that puts all Firefox 3.0 users at risk of PC takeover attacks. According to a note from TippingPoint’s Zero Day Initiative (ZDI), a company that buys exclusive rights to software vulnerability data, the Firefox 3.0 bug also affects earlier versions of Firefox 2.0x. Technical details are being kept under wraps until Mozilla’s security team ships a patch. According to ZDI’s alert, it should be considered a high-severity...

C# 3.0 Property initialization model tip

Continuing the series of articles regarding new C# 3.0 features, the following article explains what's new in the way we initialize properties. Check it out.

C# 3.0 Property declaration model

A new feature in C# 3.0 is the property declaration syntax. This quick tip article shows what's new.

Paging using the ADO.NET Entity Framework

I think this will be usefull for most people starting to develop over the Entities Framework. I'll explain how you can accomplish this by using the Skip and Top builder methods, and how it translates to Entity SQL and Transact SQL. You can read the full article here.

Make history with Firefox 3

It appears today is the day to make history and enter the Guiness book of world records! Mozilla Corp sent yesterday the e-mail we've all been waiting for. The official download date was announced yesterday around 20h UTC (or formerly known GMT) and today is the day. So start downloading Firefox 3 and be part of a story to tell!

Firefox download 2008 day is here! Stay tuned!

How about break the guiness world of records with the biggest amount of software downloads? Sounds cool when it's Guiness we're talkin' about. June the 17th is the starting day, Download Day will coincide with the general availability of Firefox 3. The clock will start ticking when Firefox 3 goes out the door! They don’t have a definitive date for Firefox 3 yet, but it should be in June. So pledge, be watchful and be a part of this massive worldwide initiative. At the time of this post, official counter says 1,574,768 people have pledged already, and the number keeps rising. Official initiative website:...

XMLInclude and SOAPInclude demystified

Have you ever needed to use a web service derived class that isn't made available on your consumer application web service proxy class? This is the article for you. XMLInclude and SoapInclude, of the System.XML.Serialization namespace are here to do the job.

Iterate through a generic Dictionary with KeyVakuePair

For all you C# Generics starters out there, I felt like post a tiny bit of code for you to understand using key/value pairs in a more generic fashion.

Windows Live Help Community also closed for good

Microsoft has silently removed the Windows Live Help Community service. The link is now redirecting to Windows Live Help. This is just one of the many Windows Live services dropped in recently. Just like Windows Live for TV, Help Community never made it out of beta. For those of you who don't remember, Microsoft released Windows Live Help Community in December 2006, providing another channel for users to get help for their Windows Live services. However, throughout the lifetime of the service, only three services ever utilized Help Community - that is Windows Live Admin Center, Windows Live Call for Free,...

Windows Vista SP1 RC will expire on June 30. Uninstall Now!!

Just a small reminder guys. Just in case you haven't done it yet, you should uninstall any Release Candidate builds (any build less than 6.0.6001.18000) before they expire on June 30th. After this date, the kernel will stop with an     END_OF_NT_EVALUATION_PERIOD      error message an hour after the machine has booted. If you do wait until after June 30, just reboot your PC and start the uninstall process.

Yahoo says 'No' to Microsoft and welcomes Google instead

Yahoo announced that it has ended its meetings with Microsoft in favour of a search-related deal as well as the sale of the entire company. Yahoo is expected to move forward with an advertising pact with Google. According to Yahoo’s press release, issued Thursday afternoon: Yahoo!’s Board of Directors has determined, after careful evaluation, that such a transaction would not be consistent with the company’s view of the converging search and display marketplaces, would leave the company without an independent search business that it views as critical to its strategic future and would not be in the best interests of Yahoo! stockholders. Needless to say that...

List classes from a given namespace

Just posted a little snipplet article on how to list classes that belong to a given namespace.

Podcasting Kit for Sharepoint June 2008 Tech Preview

The June 2008 tech Preview of the PKS project is now available on codeplex. This version is a technical demo of what PKS is, and what it will offer. Expect a production version to be released by September 2008. For those who don't know, podcasting Kit for SharePoint® (PKS) is an accelerator for social media, using podcasting and social networks to deliver the next generation knowledge management solution to Microsoft customers. Built on top of Microsoft® Office SharePoint® Server 2007 and Silverlight 2, PKS delivers an integrated experience with a wide variety of devices including PC, Zune™, Windows Mobile phones and...

Dynamic Entity property search using Expressions

Just posted an article on how to dynamically create an expression tree to apply query restrictions based on any object.

Windows Home Server Power Pack 1 beta

Yesterday, the WIndows Home Server team guys, just made available a Release Candidate of Windows Home Server Power Pack 1 (Build 1771). It is now available for public download thru Microsoft Connect. Among other fixes and enhancements, this release targets the widely famous data corruption bug, wich proved to be much more of a pain than what they initially estimated. Some of the new features are: Support for PCs running Windows Vista x64 editions Backup of home server Shared Folders Easier, enhanced remote access capabilities Better energy efficiency Improved performance Chinese and Japanese versions The ball is now on the beta tester's side. An official release...

Microsoft Project Code Named “Velocity” CTP1

Last week Microsoft lauched the Community technology preview of "Velocity", a distributed application cache management platform. “Velocity” is a distributed in-memory application cache platform for developing scalable, available, and high-performance applications. Using “Velocity,” applications can store any serializable CLR object without concern for where the object gets stored because data is cached across multiple computers. “Velocity” allows copies of data to be stored across the cache cluster, protecting data against failures. It can be configured to run as a service accessed over the network or can be run embedded with the distributed application. “Velocity” includes an ASP.NET session provider object enabling...

How to check for an entity object's EntityKey properties

In an Entity Framework enviroment, the generated EDM (Entity Data Model) provides us with all the information we need to map our database schema. (In fact, that isn't entirely true. Unfortunately default values aren't mapped into its relative objects. But since that's not the issue here, I'll adress that in a later post). Whenever you need, you can check each of your Entity object's properties and attributes in order to find its schema on your database. One common question in the Entity Framework community is: How do I get all the primary keys of an Entity Object (EntityKey's). Well, the answer is simple: all you...

Internet Explorer 8.0 Beta 2 compliance

As you all probably know, Internet explorer Beta 2 will be available in August, and with it, probably some new development issues that developers shoud be prepared for. Every new browser version release comes filled with changes destined to improve compliance and (supposedly) make it more meaningfull. The problem is, some websites of today might experience problems with this new release. Well, apparently Microsoft added a new feature in internet explorer that allows you to specify wich version of IE is your application targeting. With this information, upcoming versions of Internet Explorer will be able to validate and render it acoordingly to the...

Grand opening!

Well, this is it. After a long absense of the blogging world I finally started my own virtual writing corner on the web. Hey, after all, I'm more of a verbal guy than a writer. Guess the ones who know me could now be asking "Why the english?". Well... This blog is, generally speaking, about Microsoft technologies. We belong in a world-wide community of people who share knowledge and interests. That's where the real value is. Wouldn't it be a terrible loss if I damaged the communicative potencial between us all? And moreover, I'm a man of the world myself :o) Njoy...

CopySourceAsHtml for Visual Studio 2008

For all the bloggers out there who share the passion of software technologies and provide code samples in their web cntent, here's a hint for you: it's called CopySource as HTML. It's a Visual Studio 2008 Addon that copies your source code as HTML, ready to paste into your blog posts. Here's the result:    43 /// <summary>    44         /// Gets the title for the article categories.    45         /// </summary>    46         /// <value>The article collection.</value>    47         public static string ArticleCollection    48         {    49             get    50             {    51                 return GetSafeConfig("ArticleCollection", "Article Categories");    52             }    53         } To install, just download this file,...