MSCommunity BiH Session: Developing Windows Store LOB apps

After great 3 days of KulenDayz and CEE MVP Summit in Baranja (north-east part of Croatia), the next conference I will be speaking is MSCommunity BiH konferencija in Sarajevo.
For the first time, Microsoft Community in Bosnia and Herzegovina is organizing the event dedicated for launching new Microsoft products Windows 8, Windows Server 2012 and Visual Studio 2012. For this conference I prepared a session about developing Windows Store LOB apps. This presentation has a lot of cool demos integrated in to one app called ĆevapExplorer.
Through the session I will be presenting how to design Windows Store app, by describing main design requirements of each WinStore app. Beside design feature, Win Store app requires data and connection to data source. Through the demo it will be presenting how to develop data model by using the latest Microsoft ORM Entity Framework V5.
After DB model is implemented, we need some way to provide data to Windows Store app. Windows Store app is running in some kind of isolated storage provided by Windows Run-Time, so there is no way to connect EF model directly to Win Store app. The only way to provide EF data to Win Store app is by implementing some kind of web service (REST or WCF in our case).
The second part of the demo will be presenting how to implement WCF service by using the latest version of the .NET 4.5 and WCF 4.5. If you want to develop lighter service infrastructure, beside WCF, you can use ASP.NET Web API to implement RES service.
The further demo will be presenting how to implement REST service that will be used by Win Store app. Implementation of REST service by using ASP.NET Web API is very popular MS Technology today, and it is recommended for developing this kind of services.
After backend infrastructure is presented, the main demo can starts using data of EF Model through REST or WCF service. In the first part of the main demo it will be presenting how to develop UI for presenting data, by describing how to use predefined visual studio 2012 templates, how to use HttpClient and how to integrated our app with Windows 8, by implementing Windows 8 contracts. By implementation Search Contract, demo will show how to integrate Windows 8 Search mechanism in to our app.
As the last part of demo, it will be presenting how to implement data source without using .NET infrastructure, but using only WinRT. For this we will use SQLite library. SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. SQLite is the most widely deployed SQL database engine in the world. Because of native support of WinRT, this library can be easily compiled and built in Windows RunTime, so we used it as a C/C++ class library in our C# WinStore app. This part of demo present how to used native nature of WinRT to use C/C++ library in our C# application, without complex implementation seen in .NET with P/Invoke and DLL Import.

Because of importance of accepting new Windows 8 develop technology in the future development, this blog post is part of several post which will give detail information about each mentioned part of the demo. Each blog post will be describe in form of tutorial one part of the demo. The name of demo is ĆevapExplorer. Ćevap stands for the most populate Bosnian national dish which can be found in every restaurant, but only few of them serve the best Ćevap. The application is collecting data about the best restaurants around the Bosnia not only for Ćevap, but the main Bosnian dishes. The app present location about restaurants serving the best dish.
After conference event, blog post will be published periodicaly.
See you in Sarajevo.


1 thought on “MSCommunity BiH Session: Developing Windows Store LOB apps

  1. Pingback: Developing Windows Store App Part 1: Database Model « Bahrudin Hrnjica Blog

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s