HTML5 and Windows Phone 7

Last week I did a talk on HTML5 and Windows Phone for the Danish Developer Conference 2012. The talk was quite successful and around 80% of said that they learned something new, which is the whole point of these conferences.

If you’re interested in my presentation then you can download it from here and code examples from here



Danish Developer Conference 2012

There’s a lot of talks about HTML5 these days and I myself will be doing a talk regarding the subject in the Danish Developer Conference. I was planning on saving my content for my presentation but once my talk is done I’ll be posting a couple of articles on HTML5 and Windows Phone 7.

Here’s an introduction / teaser to what I’ll be presenting…



A long break...

As I come back from another long blogging break, a lot of great things have happened in my life…

The greatest experience I’ve had so far in my life was on September 15, 2011 I became a father to this wonderfully charming little guy you see below:

I took a full month off work to play daddy and to assist my wife with everything I possibly can. It was a great time and I’ll never regret or forget that.

My hands were completely tied from work the day I got back from my leave. Luckily the projects were all very exciting and challenging, but did require me to spend a ton of hours on work. I had the chance to work on an online music service called TDC Play for a rather large danish based telecom company called TDC. I unfortunately only took part in the design and development of the Windows Phone 7 version, but the app is also available on the iOS and Android.

The app was extremely fun to make and I got the to work with my old colleages from the Microsoft Development Center in Copenhagen. I expect to post some articles on performance, background agents, Implementing a MediaStreamSource for streaming or progressive downloads, and loads of other fun stuff.

I also got started again in doing some speaking events. In February 29 in Horsons, Denmark I’ll be doing a talk on Windows Phone 7 and HTML5 for the Danish Developer Conference and on February 13 I’ll be doing an online talk on Background Agents on Windows Phone 7

So what’s next for me in the blogsphere? Well to begin with I’d like to continue on my series Multi-platform Mobile Development and some articles on Windows Phone 7 development. I’m looking forward to getting back into writing some useful articles.

I’ll probably also be back on the MSDN forums, especially the Smart Device section to help out other developers running into issues with mobile development



SQL Compact Query Analyzer

I’ve been working extensively on enterprise mobility projects lately. These applications integrate into large SAP based systems and when testing the system it can get very tedious to set up some temporary data from the backend. I’m also working with some not-so-technical testers that get intimidated by the Visual Studio or the SQL Server Management Studio. This led me to writing an open source project called SQL Compact Query Analyzer

Here’s some details I pulled directly off the CodePlex Github page

Project Description

A SQL Server Compact Edition Database Query Analyzer

Download latest release here

Features:

  • Create new database
  • Automatically refresh database upon executing create/alter/drop table queries
  • Displays database information (database version, filename, size, creation date)
  • Displays schema summary (number of tables, columns, primary keys, identity fields, nullable fields)
  • Displays the information schema views
  • Displays column information (database type, clr type, max length, allows null, etc)
  • Displays index information (column name, is unique, is clustered)
  • Execute SQL Queries against a SQL Server Compact Edition database
  • Execute multiple SQL queries (delimited by a semi colon ;)
  • Easily edit the contents of the database
  • Display query result as XML
  • Shrink and Compact Databases
  • SDF file association with SQL Compact Query Analyzer for launching directly by opening the SDF in Windows Explorer
  • Displays thumbnails for IMAGE fields
  • Generates Schema and Data Scripts
  • Supports password protected databases
  • Supports SQLCE 3.0, 3.1, 3.5 and 4.0

Coming at some point:

  • Purge database content
  • Create, edit, and drop tables UI
  • Create, edit, and delete table references and indexes UI
  • Support for SQL Server Compact Edition 2.0

Screenshots

alt text

  • Displays database and schema information and executes multiple SQL queries directly

alt text

  • Edit the table data directly

alt text

  • Display the contents of IMAGE fields

alt text

  • Performance numbers for queries

alt text

  • Query errors

alt text

  • Output result set as XML

alt text

  • Create new database

alt text

  • Shrink, compact, script database

Prerequisites:

  • .NET Framework 4.0

Check it out! You might find it useful!



SQL Compact Code Generator

More than a year ago, I published a project on CodePlex called SQL Compact Code Generator. Unfortunately, I never managed to find the time to do some work on it and the project was set on a very long hold. A year after I suddenly really needed such a tool and decided that I should put in some hours on the project.

I’m currently working on a large enterprise project where changes to the database schema is done rather frequently, to avoid the pain of updating my data layer after every change I decided to use my code generator.

Here’s some details I pulled directly off the CodePlex Github page.

Project Description

Contains a stand alone GUI application and a Visual Studio Custom Tool for automatically generating a .NET data access layer code for objects in a SQL Server Compact Edition database.

Features:

  • Visual Studio 2008 and 2010 Custom Tool Support
  • Creates entity classes for each table in the database
  • Generates data access code that implements the Repository Pattern
  • Generates methods for Create, Read, Update and Delete operations
  • Generates SelectBy and DeleteBy methods for every column in every table
  • Generates a Purge method for every table to delete all records
  • Generates Count() method for retrieving the number of records in each table
  • Generates CreateDatabase() method for re-creating the database
  • Generates xml-doc code comments for entities and data access methods
  • Generates Entity Unit Tests
  • Generates Data Access Unit Tests
  • Generates .NET Compact and Full Framework compatible code
  • Support for SQL Compact Edition version 4.0
  • Multiple test framework code generation (MSTest, NUnit, xUnit)
  • Transaction support per DataRepository instance (Begin, Commit, Rollback)
  • Code generation options to enable/disable unit test code generation
  • Windows Phone 7 “Mango” support for generating a LINQ to SQL DataContext

Data Access Custom Tools:

  • SQLCECodeGenerator - Generates entity and data access components using a single file.
  • SQLCEMangoCodeGenerator - Generates Windows Phone 7 “Mango” SQLCE entity and data access components using a single file
  • SQLCECodeGeneratorV2 - Generates entity and data access components using several files. One file per class or interface
  • SQLCEMangoCodeGeneratorV2 - Generates Windows Phone 7 “Mango” SQLCE entity and data access components using several files. One file per class or interface

Data Access Unit Test Custom Tools:

  • SQLCEMSTestCodeGenerator - Generates entity and data access unit test code that targets MSTest using a single file
  • SQLCENUnitCodeGenerator - Generates entity and data access unit test code that targets NUnit using a single file
  • SQLCEXUnitCodeGenerator - Generates entity and data access unit test code that targets xUnit.net using a single file
  • SQLCEMSTestCodeGeneratorV2 - Generates entity and data access unit test code that targets MSTest using several files. One file per class or interface
  • SQLCENUnitCodeGeneratorV2 - Generates entity and data access unit test code that targets NUnit using several files. One file per class or interface
  • SQLCEXUnitCodeGeneratorV2 - Generates entity and data access unit test code that targets xUnit.net using several files. One file per class or interface

Screenshots