Posted by: scipbe | November 19, 2009

Silverlight 4 beta and WCF RIA Services CTP

Yesterday Microsoft released some new preview and beta versions of Silverlight, RIA Services, Blend, Media Framework, Toolkit, … It looks like a major update with a lot of new features (webcam support, RichText control, HTML content, access to local files, drag and drop, ICommand, right clicks and mouse wheel support, …) and improvements (data binding, validation, DataGrid, clipboard, styles, unit testing, …) In this post I will refer to the most interesting posts:

  • Tim Heuer gives a great overview with some videos of all new features in Silverlight 4 beta.
  • Fore more detailed information and examples about Silverlight 4 you should take a look at Mike Taulty’s posts.
  • Also Alex Golesh started posting a lot of detailed examples.
  • On Channel9 you can find several hands-on-labs from John Papa that demonstrate all new Silverlight 4 features.
  • Nick Kramer posted a Word document with an overview of the new security features in Silverlight 4.
  • Jeff Wilcox posted a large walkthrough to demonstrate how to use the Silverlight unit testing tools.
  • In the RIA Services forum you will find more information about the new preview of WCF RIA Services. Don’t forget to read the “Breaking changes” document.
  • And Brad Abrams describes the new features in WCF RIA Services CTP that are based on feedback of us developers and he also posted a nice step-by-step guide of his demo at PDC 2009.
Posted by: scipbe | August 23, 2009

Advanced databinding with ViewModels in Silverlight

Silverlight and RIA Services are great technologies and the Model-View-ViewModel (M-V-VM) pattern is a nice approach to keep UI and logic separated. But using the combination of view models with item controls, dataforms and commands can be a laborious task because the databinding features in Silverlight are quite limited. I posted an article on my website in which I demonstrate how binding with ViewModels can be improved by using the BindingHelper class and by creating your own command behaviors.

Posted by: scipbe | July 15, 2009

Silverlight 3 & RIA Services July CTP

Last week Microsoft released the official version of Silverlight 3, a new CTP (July 2009) of RIA Services and a RC of Expression Blend 3.0. SL3 is a major update and it is released 9 months after version 2.0, which is quite fast. SL3 provides out of the browser support, HD media support, better graphics, improved data binding, search engine optimization (SEO) support, … It seems that SL3 RTW disables the designer in Visual Studio 2008 because people were having a lot of problems with it. Fortunately the future version 2010 will provide a fully interactive WYSIWYG designer including data binding support within the designer.

Following links can be used to download all the needed setups. Make sure to uninstall the previous versions first.

It seems that these releases contain a lot of breaking changes. I’m already struggling 2 days to migrate a project that has been developed with Silverlight 3 beta and RIA Services CTP May. In SL3 the DataForm has been redesigned and there are changes in the AutoCompleteBox and DataGrid controls. In RIA Services a lot of things have been improved but also changed drastically; code sharing, loading data, authentication, custom validation, update parameters, …

Following blog posts and articles will help you to migrate:

Posted by: scipbe | June 8, 2009

Windows 7 for Developers

Last week I attended a two day Microsoft training about Windows 7 for Developers at U2U. We took a closer look at the Release Candidate and it’s features for developers.  It was quite interesting to see how to develop applications that use specific Windows 7 features like the new taskbar (thumb previews, jump lists, icon overlays), ribbons, multi touch, UAC, power management, sensors and location, Direct2D, DirectWrite, …

Afterwards I take some time to look up some extra information, libraries and tools. I found a lot of interesting websites and blog posts and so I summarize them here:

Windows 7

Microsoft already created a website with all information and downloads for Windows 7

Another very interesting source is Paul Thurott’s Supersite for Windows

As a developer you really should follow up the posts at the hereunder blogs. Sergey Zwezdin posted 10 great posts about programming Windows 7.

There are several Windows 7 forums with a lot of interesting posts. You surely should checkout the Tutorials section of SevenForums.

Windows API Code Pack

The Windows API Code Pack contains several .NET libraries to access all the new Windows 7 features. This MSDN Code Gallery page also provides several videos.

Federated Search (ODSX)

Following articles explain how to create your own Federated Search OSDX files. Popular OSDX files for Live, Google, MSDN, Wikipedia, Flickr, … can also be downloaded.

Boot from VHD files

Windows 7 offers great support for virtual harddisks and following articles describe how to create and mount these virtual harddisk VHD files and how to boot from them.

Library XML files

Windows 7 introduces the concept of libraries. A library is an aggregate of many different folders and it provides a view for specific content types. I noticed that there is no way to change a Library icon via the Windows UI. Following forum post explains where you can find the XML files which describe a Library and how to add a custom icon.

Run as different user

In Windows 7 the “Run as” option is not visible by default. It seems that it is implemented as an extended menu which is only displayed if you hold the SHIFT key. More info can be found at following forum post:

Ribbon

The WPF Ribbon control, a UI control that will replace menus, toolbars and popup windows in future applications, can be downloaded at Codeplex :

UAC

The User Account Control Helpers library is a project on CodePlex supporting all the UAC features of Windows Vista and Windows 7. It facilitates interaction with the UAC mechanism, handles manifest creation, extraction and embedding, and more.

Compatibility

Microsoft provides a Application Compatibility Toolkit (ACT) that contains all the necessary tools and documentation to evaluate and mitigate application compatibility issues before deploying applications to Windows 7. The toolkit already contains a lot of shims but you can also create your own shims to force privileged rights or program files or registry virtualization to run older applications.

Instrumentation

Following MSDN page provides a good overview of all the performance analysis, instrumentation, WMI, … features and tools:

If you are using WMI, you definitely should check out the LINQ to WMI project at CodePlex:

Training Kit

Update: The official Windows 7 Training Kit for Developers can be downloaded at the Microsoft website

Last week I attended a two day Microsoft training about Windows 7 for Developers at U2U. We took a closer look at the Release Candidate and it’s features for developers. It was quite interesting to see how to develop applications that use specific Windows 7 features like the new taskbar (thumb previews, jump lists, icon overlays), ribbons, multi touch, UAC, power management, sensors and location, Direct2D, DirectWrite, …

Afterwards I take some time to look up some extra information, libraries and tools. I found some interesting websites and blog posts and so I will share them:

Windows 7

Microsoft already offers a website with all info and downloads about Windows 7: http://www.microsoft.com/windows/windows-7/

Another very interesting source is Paul Thurott’s Supersite for Windows : http://www.winsupersite.com/faq/windows_7.asp

Several Windows 7 forums contain a lot of interesting posts:

http://www.sevenforums.com

http://www.w7forums.com/

http://windows7forums.com

Windows API Code Pack

The Windows API Code Pack contains several .NET libraries to access all the new Windows 7 features.

http://code.msdn.microsoft.com/WindowsAPICodePack

Federated Search (ODSX)

Following articles explain how to create your own Federated Search OSDX files. Popular OSDX files for Live, Google, MSDN, Wikipedia, Flickr, … can also be downloaded.

http://msdn.microsoft.com/en-us/library/dd742951(VS.85).aspx

http://www.windows7hacker.com/index.php/2009/04/how-to-create-custom-open-search-in-windows-7/

http://www.blogsdna.com/2307/windows-7-search-connectors-for-google-youtube-yahoo-wikipedia-twitter.htm

http://www.beingmanan.com/wp/2009/01/windows-7-resources-built-how-to-on-themes-connectors/

http://www.sevenforums.com/tutorials/742-windows-7-search-federation-providers.html

Boot from VHD files

Windows 7 offers great support for virtual harddisks and following articles describe how to create and mount these virtual harddisk VHD files and how to boot from them.

http://edge.technet.com/Media/Windows-7-Boot-from-VHD/

http://blogs.zdnet.com/hardware/?p=3324

Library XML files

Windows 7 introduces the concept of libraries. A library is an aggregate of many different folders and it provides a view for specific content types. I noticed that there is no way to change a Library icon via the Windows UI. Following forum post describes where you can find the XML files which describe a Library and how a custom icon can be added.

http://www.sevenforums.com/tutorials/3011-libraries-icons-change.html

Run as different user

In Windows 7 the “Run as” option is not visible by default. It seems that it is implemented as an extended menu which is only displayed if you hold the SHIFT key. More info can be found at following forum post:

http://www.sevenforums.com/tutorials/419-run-different-user.html

Ribbon

The WPF Ribbon control, a UI control that will replace menus, toolbars and popup windows in future applications, can be downloaded at Codeplex :

http://wpf.codeplex.com/Wiki/View.aspx?title=WPF%20Ribbon%20Preview

UAC

The User Account Control Helpers library is a project on CodePlex supporting all the UAC features of Windows Vista and Windows 7. It facilitates interaction with the UAC mechanism, handles manifest creation, extraction and embedding, and more.

http://uachelpers.codeplex.com/

Compatibility

Microsoft provides a Application Compatibility Toolkit (ACT) that contains all the necessary tools and documentation to evaluate and mitigate application compatibility issues before deploying applications to Windows 7. The toolkit already contains a lot of shims but you can also create your own shims to force privileged rights or program files or registry virtualization to run older applications.

http://www.microsoft.com/downloads/details.aspx?FamilyId=24DA89E9-B581-47B0-B45E-492DD6DA2971&displaylang=en

Instrumentation

Following MSDN page provides a good overview of all the performance analysis, instrumentation, WMI, … features and tools:

http://msdn.microsoft.com/en-us/performance/default.aspx

If you are using WMI, you definitely should check out the LINQ to WMI project at CodePlex:

http://www.codeplex.com/linq2wmi

Posted by: scipbe | May 17, 2009

RIA Services – part 1

A few months ago Microsoft released the first preview of .NET RIA Services. This new framework promises to simplify building n-tier Line of Business (LoB) applications by providing patterns, components and tools to build services, query data, handle CRUD operations, resolve concurrency, manage data validation, … The March 2009 and the new May 2009 CTP’s only support Silverlight 3 but the final version will also offer support for ASP.NET/MVC/AJAX and WPF.

I have been exploring RIA services for a few weeks now and I must admit that I’m really excited. The architectural design looks quite good, these first CTP’s work fine and it really boosts productivity. The RIA Services framework handles all the plumbing to move entities from the server to the client, it offers advanced change-tracking and caching, several techniques for data validation are provided, there is support for authentication and roles, the integration with Silverlight UI controls like DataForm and DataPager works great and the current support for the ADO.NET Entity Framework really simplifies certain tasks.

If you want to start exploring RIA Services then you should definitely start reading the PDF document that Microsoft has published. This document gives a very good overview of all features of RIA Services.

While using RIA Services I found several great features that I wanted to blog about. In the coming months I will try to write a series of articles about RIA Services. I will not explain the details about its design, but I will try to give a lot of code samples, tips and ideas. I also stumbled upon some limitations and shortcomings of the current preview. So in this first article I will focus on the current limitations and I will offer you some of my workarounds and tips.

Posted by: scipbe | May 1, 2009

Live Mesh services

Last week Christophe Geers, a friend of mine, posted a great article about the Live Mesh services and framework. Live Mesh is one of the building blocks of Microsoft’s Azure platform and it allows you to easily synchronize files with all your devices (PC, PDA, smartphone, …) The great thing for us developers is that it also provides REST-based API’s which can be used to query the shared files or to store all kinds of data.

Christophe demonstrates how to query the Mesh, how to create folders and how to upload and download files.

Some months ago another Belgian .NET developer (and trainer) Peter Himschoot also posted an article about Live Mesh which explains how to create your own data structures and how to store and retrieve data.

Posted by: scipbe | April 14, 2009

New connection providers in LINQPad

A few weeks ago I started testing the beta version of LINQPad 1.35. Some days ago it has been officially released. This great tool from Joe Albahari was introduced in 2007 and nowadays it has become a very mature tool which should be in the toolbox of every .NET developer.

Version 1.35 offers new connection providers and it has native support for LINQ to SQL and the Entity Framework models. It also provides new query types like SQL and Entity-SQL.

I am a fan of this tool and I already demonstrated its features in many of my articles. I was probably one of the first developers who used LINQPad to execute LINQ to Entities queries. In the past you needed to add some references and create the ObjectContext in each script. It was a bit of work but it functioned fine. Now you can do the same thing with the new connection providers but they also offer many advantages. In a small article which can found on my website I will highlight some of the new features.

Posted by: scipbe | March 25, 2009

Silverlight 3 beta & RIA services beta links

A week ago Microsoft demonstrated the first beta of Silverlight 3 and the new RIA Services framework on the MIX09 conference in Vegas. A lot of shortcomings from Silverlight 2 are solved and many new interesting features have been added. Following weeks and months I will try to examine all the new Silverlight features and explore some approaches to integrate the RIA services. In this post I will try to give a roundup of all interesting articles and blog posts.

Downloads

  • The Get Started page from the Silverlight website provides links to all setups you need to install Silverlight 3 beta, the Silverlight Tools for Visual Studio, the SDK, the RIA Services and a trial version of Expression Blend 3.

Silverlight 3

  • The same Get Started page also describes all the new features of Silverlight 3 (new controls, data binding improvements, data validation, WCF improvements, higher quality video and audio, 3D support, skinning, new effects and animations, search engine optimization and deep linking, out of the browser capabilities, save file dialog, …).
  • Following link is an interesting e-book (PDF) from Laurence Moroney who takes a first look at Silverlight 3.
  • Tim Heuer also posted an interesting overview of all the new features.
  • And Mike Taulty’s blog contains several posts with a lot of source code and screenshots about some new cool things.

WCF

  • Yavor Georgiev from the Silverlight Web Services Team posted an overview of the WCF improvements in Silverlight 3 (binary encoding, faults support, duplex serivces, credentials transport, …)
  • And Jimmy Lewis describes how to fix a problem with Silverlight enabled-webservices when Silverlight 2 SDK is installed.

SEO

  • Following blog contains some posts about the Search Engine Optimization (SEO) features of Silverlight 3.

Application Extensibility

  • Andrea Boschin describes in his blogpost the new IApplicationService interface which can be used to build client side services.

Graphics & 3D

  • Pete Brown’ blog contains a lot of posts about 3D transforms, Bitmap API, Pixel Shader, …
  • Also Andy Beaulieu posted a lot about Pixel Shaders, GPU acceleration, Bitmap caching, …
  • Andrea Boshin demonstrates his TileEffect with the Pixel Shader.
  • Jeff Prosise shows how to use the Pixel Shader and the High-Level Shading Language (HLSL) to create fancy effects like his WateryEffect.
  • Jaime Rodriguez announces that more than 20 effects from the WPF Effects Library have been converted to Silverlight 3.

Out of the browser

  • Mike Taulty has a blogpost which shows how to run a Silverlight application outside the browser.
  • Also Andrea Boshin demonstrates these features.

Controls & Silverlight Toolkit

  • Yifung Lin provides a quick overview of the new features in the DataGrid.
  • A lot of controls from the previous CodePlex Silverlight Toolkit release have been moved to the new Silverlight release. The Toolkit itself has been updated and the march 2009 release contains new controls (Accordion, DomainUpDown, ChildWindow, …) and a lot of improvements. The package can be downloaded via following link. The Wiki page describes all the changes in this latest release.
  • Ning Zhang posted an article with a lot of screenshots which demonstrates the new design time features.
  • Ruurd Boeke’s blog contains detailed posts about several new controls like DomainUpDown, Accordion, …
  • And the following blog post describes the performance improvements in the charting controls.
  • Jef Wilcox has already updated and improved his AutoCompleteBox Highlighting controls.

RIA Services

The new RIA Services is a framework to simplify building n-tier Line of Business (LoB) applications. This framework provides patterns, components and tools to build services, query data, handle CRUD operations, resolve concurrency, manage data validation, … It looks promising so you should at least take a look at the current documentation.

  • Microsoft published an interesting PDF document which gives a full overview of all its features.
  • Several sample applications can be found at the MSDN code gallery.
  • Nikhil Kothari explains the architectural concepts behind RIA Services.

Tools

  • Koen Zwikstra already released an update for this great Silverlight Spy tool which now supports Silverlight 3 and IE8.

Videos

All sessions from MIX09 have been recorded and these video files are available on the internet. Following page gives an overview of the 24 Silverlight related videos. Of course a lot of these sessions were interesting but in my opinion following ones are the most fascinating.

Posted by: scipbe | March 18, 2009

ReSharper 4.5 beta

Today I installed the public beta of ReSharper 4.5. I’m using this tool for more than a year and I really like it. ReSharper integrates in every part of the IDE of Visual Studio and it offers me a big productivity boost. ReSharper provides a lot of great features like all kinds of coding assistance, handy refactorings, code cleanup wizards, fast navigation and search popups, …

The new version 4.5 is mostly about increasing performance and indeed the tool looks even more responsive. Besides it also offers several improvements and I especially like the following onces:

  • Better Silverlight support: code assistance for datatemplates in XAML, …
  • MSTest support: the handy unit test explorer can now be used together with MSTest.
  • New solution-wide warnings and suggestions: unassigned fields, suspicious type conversions or checks, …
  • New naming style configuration for variables, fields, properties, events, methods, enums, interfaces, classes, …
  • New and improved refactorings.

A detailed list of the new features and the download link for this beta version can be found on the website of JetBrains: http://www.jetbrains.com/resharper/beta.html

Finally I would like to recommend a great plugin for ReSharper. StyleCopForResharper is a plugin which adds all the StyleCop (=Style Analysis) rules to the code assistant and cleanup wizard of ReSharper. It is not so easy to find the perfect combination of all the rules from Code Analyses, ReSharper and StyleCop but you really should give it a try: http://www.codeplex.com/StyleCopForReSharper

Posted by: scipbe | February 21, 2009

Silverlight posts and updates

The last few weeks several interesting blogposts and updates of tools and components for Silverlight have been posted. I will try to give a small summary:

  • Microsoft released a minor update for the Silverlight 2 runtime.
  • Moonlight 1.0, the Linux implementation of Silverlight 1.0 has been released by Novell. The first alpha version of Moonlight 2.0, which will include Mono 2.0, is planned for March 2009.
  • The patterns & practices team at Microsoft released the Composite Application Guidance 2.0 (Prism) and it now also supports Silverlight. If you want to build modular and composite Silverlight LOB applications, then you certainly need to check this out
  • Koen Zwikstra released an update of his great Silverlight Spy tool.
  • Karl Shifflett released version 4.0 of his XAML Power Toys. It provides several great wizards which help you to create business forms or viewmodels in Silverlight.
  • A very interesting article about M-V-VM from Josh Smith has been published on MSDN. The article demonstrates the Model-View-ViewModel pattern in WPF but this pattern is also very useful in Silverlight.
  • Also Pencho Popadiyn posted an interesting article about M-V-VM in Silverlight.
  • Chris Anderson published a sixth part of his series “Building a Silverlight Line-Of-Business Application”. In part 6 he introduces a handy HTML Viewer Control for Silverlight.
  • Bart Czernicki has added a new post in his series “Silverlight 3: What we Know So Far & What We Can Predict “. Microsoft will demonstrate Silverlight 3 during MIX09 in Vegas and I’m sure Bart and others will post a lot of information about this future version after March 18th.
  • Christoph de Baene (who is helping our company to build a great Silverlight SOA framework) has posted a short item about intercepting WCF messages in Silverlight.
Posted by: scipbe | January 27, 2009

Sharing source code between .NET and Silverlight

A common problem when developing Silverlight applications is how to share classes and especially (Entity Framework) entities which are compiled for the full .NET framework in a Silverlight application. Silverlight is a browser plugin and a platform independent subset of the full .NET framework. Therefore Visual Studio does not allow referencing .NET assemblies from your Silverlight application.

Fortunately there is a very simple technique to share source code. In this article I will try to demonstrate this technique with several real world examples and I will give you some handy tips.

Posted by: scipbe | January 24, 2009

Cleaning up and organizing Outlook mailboxes

At the beginning of the year I clean up and organise my Outlook mailboxes. I want to keep Outlook performing as fast as possible so I try to reduce the size of my inbox. Nowadays I use LINQPad, some C# scripts and my OutlookProvider component to simplify this job. I have no idea if these scripts are useful for other developers but why not share them? I have posted a small article on my website which contains these C# scripts.

Posted by: scipbe | January 12, 2009

ADO.NET Entity Framework : Metadata extension methods

Posted by: scipbe | December 17, 2008

Querying Excel worksheets with LINQ

A while ago I was looking for a way to query Excel with LINQ. I needed a simple solution that allows me to query tables in Excel worksheets in a tool like LINQPad.

I couldn’t find a solution which fitted my needs so I decided to write my own ExcelProvider.

Today I posted a small article that describes how I have implemented my ExcelProvider and it demonstrates its features by giving an example of a LINQ query and the result in LINQPad.

You can read the full article or download all sources at my website.

Posted by: scipbe | December 2, 2008

ADO.NET Entity Framework : Querying metadata

A few months ago I posted several articles about the ADO.NET Entity Framework beta 3. In the meanwhile the Entity Framework has been officially released and a lot of resources about this technology have become available.

The last few weeks I have been taking a closer look at the metadata services of the ADO.NET Entity Framework. It is not so easy to comprehend all the metadata concepts (EntityTypes, EntitySets, EdmTypes, EdmMembers, EdmProperties, NavigationProperties, …) of the three models in the Entity Framework. Besides it seems that there are almost no useful examples available on the internet.

That is why I have posted an article with 20 examples which use LINQ to query the metadata collections of the ADO.NET Entity Framework. These queries can be used to examine the structure of your Entity Data Model or to get statistics about it.

This is the table of contents of the article which is posted on my website:

Older Posts »

Categories