The Entity Framework together with LINQ to Entities are very powerful technologies to access and manipulate data from a database. At first glance everyone is impressed by the conceptual layer which is mapped to tables in a database. When building large scale enterprise applications you will notice that the EF has a few shortcomings. When you need to gain performance or need extra security, stored procedures and user defined functions are often required. In this first article in a series of three I will focus on how to use stored procedures in the Entity Framework 4.0. In the second article I will demonstrate how to map user defined functions to model defined functions and to call them in LINQ to Entities queries. And in the final article SqlClr functions will be explored.
- Stored procedures (SP/SPROC)
- Stored procedures examples
- Importing stored procedures in the EDM
- Mapping functions to CRUD operations
- Adding Function Imports
A few weeks ago Visual Studio 2010 & .NET 4.0 (CLR, BCL, WPF, WCF, EF, …) release candidates have been released. Last week during the MIX ’10 conference Silverlight 4 & WCF RIA Services v1 RC have been set online. Also a first community preview of Silverlight for Windows Phone 7 has been released. So it’s time to roundup all download locations and links to useful articles, blog posts, videos, samples, …
Visual Studio 2010
- Downloads: Microsoft Portal with download links for all Visual Studio editions (Professional, Premium & Ultimate), Team Foundation Server, SDK, Azure, …
- Article: Team Foundation Server 2010 Key Concepts
- Article: Team Foundation Server 2010: What’s new (Jakob Ehn)
- Article: What’s new for Database projects in VS 2010
- Article: What’s new in Code Analysis for Visual Studio 2010
- Blog: Into Visual Studio Team System (Pieter Gheysens)
- Blog: Visual Studio 2010 Profiler
- Article: What’s new in the Base Class Libraries in .NET 4.0 RC
- Article: What’s new in the Base Class Libraries in .NET 4.0 beta (Justin Van Patten)
- Article: Parallelism in .NET 4.0 (Reed Copsey)
Entity Framework 4.0
- Article: What’s new in WPF 4.0 (Scott Guthrie)
- Article: What’s new in WPF 4.0 beta 2 (Jaime Rodriguez)
- Article: What’s new in WCF 4.0 (Santosh Benjamin)
- Download: Windows Identity Foundation SDK
- Downloads: Silverlight 4.0, Blend 4.0 beta, WCF RIA Services
- Article: What’s new in Silverlight 4.0
- Article: What has changed in the Silverlight 4.0 RC (Tim Heuer)
- Blog: Silverlight 4.0 features (Mike Taulty)
- Article: WCF RIA Services road to RTW via RC (Dinesh Kulkarni)
- Videos: Silverlight 4 training courses
- Blog: WCF RIA Services (Brad Abrams)
Windows Phone Tools
Visual Studio 2010, .NET 4.0 and Silverlight 4 offer a lot of new features. I like all the new features but I was especially interested in improvements that could help my current developments which are based on a M-V-VM architecture with ViewModels and a lot of bindings with UI controls. So I wrote an article and published it on my personal website. The article will focus on the improved design-time features. Along the way I will show a lot of screenshots and try to cover some other new Silverlight 4 features.
- Domain entities and WCF RIA Services
- Base classes and ViewModel interface and implementation
- ViewModel interface
- ViewModelBase class
- DelegateCommand class
- ProductViewModel class
- XAML designer
- Design-time properties
- DesignWidth and DesignHeight
- DataContext and DesignInstance
- Properties window and databinding
- Button and Command
- Showing data in Design-time
- Design-time ViewModel
- Other Silverlight 4 DataBinding improvements
- String indexers
- Dependency Objects
- StringFormat & TextTrimming
- Data Sources window
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.
- Gill Cleeren succeeded in creating a blogpost about Silverlight 4 for each day of the month December.
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.
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.
- Microsoft Silverlight 3 runtime, tools & SDK for Visual Studio 2008 SP1
- Microsoft Silverlight 3 offline documentation (CHM)
- Microsoft Expression Blend 3 + SketchFlow RC (trial)
- Silverlight Toolkit July 2009
- Microsoft .NET RIA Services July 2009 CTP
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:
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:
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:
The WPF Ribbon control, a UI control that will replace menus, toolbars and popup windows in future applications, can be downloaded at Codeplex :
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.
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.
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:
Update: The official Windows 7 Training Kit for Developers can be downloaded at the Microsoft website