 |
|
 |
|
|
Author: |
David Hanson |
Created: |
Wed, 02 Jan 2008 20:28:49 GMT |
 |
|
All things .net, wpf, XAML, C#, Workflow Foundation and many more. |
|
Goodbye Linq to SQL? |
|
|
By David Hanson on
Fri, 31 Oct 2008 13:44:31 GMT
|
|
|
|
An interesting post has arrived on the Ado.net team blog with regard to the future of LINQ to SQL. Although not coming outright and saying it, it seems that LINQ to SQL is likely to be deprecated in the future in favour of Entity Framework.
“We’re making significant investments in the Entity Framework such that as of .NET 4.0 the Entity Framework will be our recommended data access solution for LINQ to relational scenarios”
So this leaves the question, what will customers who have implemented LINQ to SQL do for long term support. I would like to see Microsoft provide clear guidelines and tooling in order to help those unfortunate ones migrate their existing software forward. The good news is that the awkward gap between LINQ to SQL and EntityFramework now seems to have been resolved.
|
 |
|
Comments (0)
|
|
|
|
New Silverlight Controls |
|
|
By David Hanson on
Wed, 29 Oct 2008 23:02:25 GMT
|
|
|
|
For those of you coming from WPF to Silverlight you often find yourself frustrated when you find that Silverlight is lacking some very useful controls that you take for granted. Well today at least that gap is narrowing..... As here you will find on codeplex the Silverlight Toolkit. http://www.codeplex.com/Silverlight
With this release you get additional layout controls such as Dockpanel, ViewBox, Wrap panels etc as well as some more advance controls such as expanders and charting!

I heard a while back these would becoming as an additional download so glad to see them finally arrive. Expect ALOT more in the near future!
|
 |
|
Comments (0)
|
|
|
|
PDC: Office via Silverlight |
|
|
By David Hanson on
Tue, 28 Oct 2008 20:34:47 GMT
|
|
|
|
Well there are announcements coming left right and center from PDC this year. We've heard about Azure and Microsoft's move to provide cloud services. We hear details of Oslo and Dublin and what they will mean for the future of language developement and modelling.
And then one very important announcment from Microsoft which shows their commitment to Silverlight and related technologies is the announcement that the next version of Office will come with a web enabled version powered by Silverlight. Their is a video posted on Channel 9 about this that shows small demos of Silverlight Word, Excel and One Note. VERY COOL!
This is the future of RIA's and software as a service and I am looking forward to see how Microsoft's competitors continue to compete now that Silverlight and .Net are going cross platform.
|
 |
|
Comments (0)
|
|
|
|
New .NET Logo! |
|
|
By David Hanson on
Sun, 26 Oct 2008 08:36:35 GMT
|
|
|
|
Well after 8 years Microsoft has decided to update the .NET Logo. I always like the old one but I think the new one is even better.

I've read in the blogs that this new logo is already in place around PDC. One thing about this logo is that it brings a feeling of familiarity and I'm not sure why. Perhaps its because it uses similar colours and gradients as those found in Photoshop CS3?
|
 |
|
Comments (0)
|
|
|
|
Silverlight 2 Released! |
|
|
By David Hanson on
Tue, 14 Oct 2008 11:22:00 GMT
|
|
|
|
Well its official, Silverlight 2 is now complete and available to the public. The full press statement can be read here.
http://www.microsoft.com/presspass/press/2008/oct08/10-13Silverlight2PR.mspx
The total download size weighs in at 4.64Mb so still pretty compact. Hats of to Microsoft for squeezing so much functionality in!
Highlights of new Silverlight 2 features include the following:
• .NET Framework support with a rich base class library. This is a compatible subset of the full .NET Framework.
• Powerful built-in controls. These include DataGrid, ListBox, Slider, ScrollViewer, Calendar controls and more.
• Advanced skinning and templating support. This makes it easy to customize the look and feel of an application.
• Deep zoom. This enables unparalleled interactivity and navigation of ultrahigh resolution imagery.
• Comprehensive networking support. Out-of-the-box support allows calling REST, WS*/SOAP, POX, RSS and standard HTTP services, enabling users to create applications that easily integrate with existing back-end systems.
• Expanded .NET Framework language support. Unlike other runtimes, Silverlight 2 supports a variety of programming languages, including Visual Basic, C#, JavaScript, IronPython and IronRuby, making it easier for developers already familiar with one of these languages to repurpose their existing skill sets.
• Advanced content protection. This now includes Silverlight DRM, powered by PlayReady, offering robust content protection for connected Silverlight experiences.
• Improved server scalability and expanded advertiser support. This includes new streaming and progressive download capabilities, superior search engine optimization techniques, and next-generation in-stream advertising support.
• Vibrant partner ecosystem. Visual Studio Industry Partners such as ComponentOne LLC, Infragistics Inc. and Telerik Inc. are providing products that further enhance developer capabilities when creating Silverlight applications using Visual Studio.
• Cross-platform and cross-browser support. This includes support for Mac, Windows and Linux in Firefox, Safari and Windows Internet Explorer.
|
 |
|
Comments (0)
|
|
|
|
|
Remix 08: Silverlight Info and Leaks |
|
|
By David Hanson on
Tue, 23 Sep 2008 19:54:04 GMT
|
|
|
|

Scott demonstrating ASP.net MVC
Well Remix is over and my thoughts post event was that it was a bit of let down. Unfortunately PDC is right around the corner and as a result no new major announcements were being made. Before attending I made a promise to myself to mix equally between design and development orientated sessions.
While there I got to speak to some great people and discuss topics ranging from visualisation techniques to the duplex communication in Silverlight. I was also lucky enough to grab a few moments of Scott Gu’s time and discuss a few Silverlight specifics.
- No MergeDictionaries for RTM - I was mortified to hear that MergeDictionaries is not going to make it into the RTM. I cannot believe that we have to specify all our styles and resources in our App.xaml for the foreseeable future. This is particularly annoying if you are trying to migrate a WPF app to Silverlight.
- H264 will miss RTM – I kind of expected this one as it was only recently announced. But Scott clarified it.
- Charting controls coming – It looks like the Silverlight team are working hard on more advanced controls and Scott let slip that charting controls are to be included.
- Silverlight automatic update – In one of Scott’s sessions he confirmed that Silver light 2 Beta 2 installs will automatically upgrade to the RTM.
- Ribbon bar for WPF on track – It looks like the Ribbon for WPF should be due sometime this year. I asked if we can expect to see this in Silverlight soon and he confirmed it was NOT on the current development schedule. (Damn).
- Silverlight not the preferred platform – I asked Scott if I could expect to see innovation happening in the Silverlight space from now on given that the VSM was developed for Silverlight first. Scott said there was no particular decision on which came first, however they will be trying and reduce the issue of code portability between WPF and Silverlight apps.
- And Finally - 3D was pretty much confirmed. When asked by a member of the audience when will we see 3D support in Silverlight Scott’s grin couldn’t be hidden. He kept saying “Well that would be a compelling option”. I’m expecting to see this announced at PDC.
So generally I had a good couple of days but felt some of the session’s could have been a little more tech and less big picture. Next year perhaps.
|
 |
|
Comments (0)
|
|
|
|
Great looking silverlight Ribbon bar!! |
|
|
By David Hanson on
Sat, 13 Sep 2008 08:55:05 GMT
|
|
|
|
I was surfing the web this morning and I came across this impressive Office Ribbon bar implementation by Simon Matthews at Infusion. He has uploaded a demo of the control and at it is mightly impressive.

I will be following his work eagerly as its something so far I think Microsoft has failed to deliver to developers. Why they have not delivered these controls I am not clear, but my hunch is that they are trying to capitalise on the uniqueness of the ribbon bar in office before they allow the rest of us the goodness. Eitherway, great job Simon.
|
 |
|
Comments (0)
|
|
|
|
|
SQL Server: How to page query results |
|
|
By David Hanson on
Thu, 31 Jul 2008 17:20:11 GMT
|
|
|
|
The application I am working on at the moment has a large number of complex search screens that allow the user to define either very narrow or very broad query's. A great deal of effort has been spent in optimising the queries in order to ensure they are performant. However, if a user decided to execute a very broad query, the result set that could be returned could be many thousands of records. Let’s take a look at a broad query using this simple SQL.
Select ID, Forename, Surname
FROM Person Where Surname like '%DA%'
In this query we want to return everything from our person table where the surname contains the letter “DA”. Running this query gives us the following 99 results. I’ve randomized the data in our person data for privacy reasons.

Now this query is running on some test data but on a live system it might return 20,000+ records. Transferring this data from our DB server to our application tier, then into business entities and serialising them via soap to our client is going to be demanding process. This is not going to be a particulary great idea, a better approach would be to return results in pages so that we can maintain a responsive UI and reduced long running network calls.
Taking this example further, we lets say that we would like our page sizes to be 5 records each. The first page will return record 1-5 and when the user clicks next we require records 6-10 to be displayed. In order for us to be able to achieve this functionality we need to implement an index on our result set so that we can locate a particular page of data within the full results. To do this SQL server provides a handy function called which ROW_NUMBER()provides an incremental index for each record in our result set. If we implement the ROW_NUMBER()as part of our results we can see the results below.
SELECT ROW_NUMBER() OVER (ORDER BY (SELECT 1)) as [Index], ID, Forename, Surname
FROM Person Where Surname like '%DA%'

We can now see from executed query above that our results contain and INDEX column which uniquely identifies each row returned from our results. By adding this index to our results we now have a way of navigating batches of records within our results set. To do this is not as simple as just adding a WHERE to our SQL statement, instead we must execute the full que ...
|
 |
|
Comments (0)
|
More...
|
|
|
Silverlight 2: Control Templating & The Visual State Manager - PART 2 |
|
|
By David Hanson on
Mon, 28 Jul 2008 09:02:56 GMT
|
|
|
In my previous post we took a quick look at some of the support blend offers for skinning controls in Silverlight 2. Within only a few minutes we were able to take an existing textbox control and extend its visual tree using a custom template. In this post I plan to take our previous skinned control example further by implementing some simple animations. This is a good chance to check out the new VisualStateManager which greatly simplifies the development of animations in Silverlight.
For the basis of this tutorial we are going to extend our textbox template so that when a users places their mouse over the textbox the control will grow to make the text more readable. When the mouse leaves the textbox control the text will shrink again back to its normal “State”. It’s the word “State” here that really matters.
If you are observant and you haven’t moved all your panels around in blend, you may have noticed a new panel called states on the left hand side of your IDE. The states panel is a visual interface for managing the different states your control can be in. To help make this clearer, we can take a look at the control template for a button control (See previous post for how to do this in blend).

As you can see the standard Silverlight button control has a number of visual states that it can placed into. If we click on one of these states in the designer, our design surface will reflect what the look control will be in that state. As an example below, if we click on the disabled state we can see that the button looks greyed out.

What is important about the VisualStateManager is that it allows us to focus in a design centric way what each state looks like when the state is changed. In order to manage states more effectively you can see that Blend provides State Groups in which we can hold multiple visual states. We are not concerned with how we get to a particular state, we are just focused on the final look once we reach it. Some of the magic behind the VisualStateManager will be covered later.
So if we move back to our previous textbox example, we specified that we want the control to increase its size when a mouse rolls over the control and when the mouse leaves, the control should return to its original size. Given this, we know that our control can be in 1 of 2 states. Using blend, we are going to create a new state group and add two states to our control. Shown below.

|
|
Comments (0)
|
More...
|
|
|
Silverlight 2: Control Templating & The Visual State Manager - PART 1 |
|
|
By David Hanson on
Thu, 24 Jul 2008 21:48:24 GMT
|
|
|
|
In this blog I wanted to provide a simple overview of some of the features provided as part of the June 2.5 Blend preview and Silverlight 2 Beta 2. Two of the key features that have been made available as part of this release is the ability to easily template controls in order to create your own custom skins as well as the new Visual State Manager which helps aid int the development of animations.
So lets get started. The first thing we want to do is have a look at how easy it is to create custom templates for controls using the June preview of Blend. We are going to create a simple Silverlight Application using the default project template provided by Blend. (Shown below)

Once Blend has created our project we need to create some very simple XAML. As this example is going to be VERY simple all we need to do is drag a textbox onto our design surface. Below shows the XAML of our form once this has been done.
<UserControl
x:Class="VSMDemo.Page"
Width="640" Height="480">
<Grid x:Name="LayoutRoot" Background="White" >
<TextBox Height="23&qu ...
|
 |
|
Comments (5)
|
More...
|
|
|
Fluent Language Interfaces & DSL's |
|
|
By David Hanson on
Thu, 07 Aug 2008 22:36:04 GMT
|
|
|
|
I was having think about fluent language interfaces and got me thinking about a DSL for search. Take this example
Web.Search
.Contains("David").And.Contains("Hanson")
.Or.contains("Michael Smith")
.Exclude("Sex")
.Exclude("man, Word, Slipper")
.WithinDomain("www.ontheBlog.Net")
.OutPutFormat(Format.XML)
.Provider(Provider.Google | Provider.LiveSearch)
.FilterLevel(Filter.None)
.MaxResult(100)
.Language(Language.English)
.Execute();
I may have to take this further. 
|
 |
|
Comments (0)
|
|
|
|
RIA's and Search Engines 2. |
|
|
By David Hanson on
Wed, 02 Jul 2008 15:35:17 GMT
|
|
|
|

A while back I blogged about the the trend in web content being developed using Rich Internet Application technolgies such as Flash & Silverlight. Previous Blog
Well an interesting announcement comes from Adobe which looks to address some of these issue going forward. Snippet below. Full article on business week here. Story.
"Flash, software, Adobe, Google, Yahoo, search engine, Web, Macromedia, photos, animationIf you're trawling the Web to buy a pair of Nikes, shop for a Volkswagen, or get a glimpse of Walt Disney's Wall-E, chances are you'll end up viewing graphics built with Adobe Systems' Flash software. Good luck finding them with a search engine, though. Turns out Google and other Web-search tools can't easily recognize pages laden with Flash-created images.
At least not yet. Adobe (ADBE) announced steps to solve those problems on July 1, providing Google (GOOG) and Yahoo! (YHOO) with software that will make pages inside Flash-powered sites show up higher in search results and infuse those results with more relevant details. Adobe's moves could persuade more consumers to visit its customers' sites and make Flash software more attractive to Web site developers. Adobe's agreements with the two biggest search engines on the Web is also a competitive slap at Microsoft (MSFT), which makes Web software that competes with Adobe's."
|
 |
|
Comments (0)
|
|
|
|
Free Download Manager |
|
|
By David Hanson on
Sat, 21 Jun 2008 11:35:45 GMT
|
|
|
|
Over the last few weeks I have been using the following product found here (http://www.freedownloadmanager.org/features.htm) which provides some cool features for downloading. Since using it I am starting to get the most of out of my 20mbps cable connection. The reason is due to the fact that the when downloading, the software creates multiple HTTP connections to the file. Check this download speed for the Silverlight 2 Beta 2 tools. Awesome.

Great speed for downloads
Key features
- Multiple HTTP connections for a single download (Make downloading ALOT faster)
- Automatically resumes on broken connections
- Torrent support
- Media Previews for partially downloaded files
- Download only certain files held in a zip file.
- Download entire sites

Screen shot
|
 |
|
Comments (0)
|
|
|
|
|
|
|
|
|
|
|
 |
|
 |
|
Twitter / LordHanson
Published Sun, 04 Jul 2010 22:07:55 +0000
by
Published Sun, 04 Jul 2010 22:05:28 +0000
by
Published Fri, 25 Jun 2010 23:01:45 +0000
by
Published Fri, 25 Jun 2010 22:54:54 +0000
by
Published Mon, 14 Jun 2010 05:08:43 +0000
by
Published Mon, 14 Jun 2010 00:04:45 +0000
by
Published Sun, 25 Apr 2010 04:39:48 +0000
by
Published Wed, 10 Mar 2010 10:29:19 +0000
by
Published Mon, 22 Feb 2010 12:31:09 +0000
by
Published Thu, 18 Feb 2010 08:13:10 +0000
by
Published Tue, 26 Jan 2010 17:48:49 +0000
by
Published Fri, 22 Jan 2010 08:14:36 +0000
by
Published Tue, 19 Jan 2010 17:35:43 +0000
by
Published Sun, 17 Jan 2010 19:01:29 +0000
by
Published Sat, 16 Jan 2010 16:38:58 +0000
by
Published Sat, 16 Jan 2010 16:34:00 +0000
by
Published Fri, 15 Jan 2010 18:55:38 +0000
by
Published Fri, 15 Jan 2010 08:28:47 +0000
by
Published Tue, 12 Jan 2010 15:28:29 +0000
by
Published Sun, 10 Jan 2010 21:49:44 +0000
by
|
|
|
|
|
|
|
|
|
 |
|
 |
|
Silverlight - Google News
Published Thu, 29 Jul 2010 23:21:01 GMT+00:00
by
Published Tue, 06 Jul 2010 18:54:39 GMT+00:00
by
Published Mon, 26 Jul 2010 20:32:23 GMT+00:00
by
Published Fri, 30 Jul 2010 13:13:57 GMT+00:00
by
Published Fri, 30 Jul 2010 14:19:22 GMT+00:00
by
Published Fri, 30 Jul 2010 08:50:54 GMT+00:00
by
Published Thu, 29 Jul 2010 09:36:57 GMT+00:00
by
Published Mon, 26 Jul 2010 11:56:30 GMT+00:00
by
Published Tue, 27 Jul 2010 20:28:37 GMT+00:00
by
Published Tue, 27 Jul 2010 12:39:37 GMT+00:00
by
|
|
|
|
|
|
|
|
|