Category: Tutorials

Using Remote Debugging On Another PC

If you’re developing a multi user app or just want to try your app out on another PC you can use Visual Studios remote debugging feature. You don’t even need to have Visual Studio set up on the remote PC for this to work. There’s a few things that need to be done so let’s get stuck in. Remote Tools For Visual Studio Before you do anything you are going to need to find the right remote tools for your version of Visual Studio. Head on over to and download Remote Tools for Visual Studio. Note: If you are...

Read More

Notepad++ Tips and Tricks

Notepad++ ( is my go to scratch pad for all things.  Not a day goes by when I don’t paste something into it. Here’s some tips and tricks that I use: JSON Formatting When working with data JSON works really well and visual studio has lots of great tools for working with it.  Sometimes though you may have to work with raw JSON and you’re probably getting it as an unformatted string.  Consider this string: [{"FieldName":"Add Plastic Coating","FieldValue":"No Coating Required","ExTaxPrice":0.0,"CustomFieldKey":2,"CustomFieldValueKey":21,"Required":false,"DataType":0,"SelectedKeys":[]},{"FieldName":"Delivery Date","FieldValue":"22/02/2017 12:00:00 AM","ExTaxPrice":0.0,"CustomFieldKey":2,"CustomFieldValueKey":30,"Required":true,"DataType":3,"SelectedKeys":[]},{"FieldName":"Pick Up From City","FieldValue":"Brisbane|","ExTaxPrice":12.0,"CustomFieldKey":2,"CustomFieldValueKey":13,"Required":true,"DataType":4,"SelectedKeys":[44]},{"FieldName":"Embossing Text","FieldValue":"fds","ExTaxPrice":0.0,"CustomFieldKey":2,"CustomFieldValueKey":31,"Required":true,"DataType":1,"SelectedKeys":[]},{"FieldName":"Upgrade Product","FieldValue":"Don't Upgrade","ExTaxPrice":0.0,"CustomFieldKey":2,"CustomFieldValueKey":33,"Required":false,"DataType":0,"SelectedKeys":[]},{"FieldName":"Additional Options","FieldValue":"Add Logo|","ExTaxPrice":10.0,"CustomFieldKey":2,"CustomFieldValueKey":14,"Required":false,"DataType":4,"SelectedKeys":[47]},{"FieldName":"How Long?","FieldValue":"1","ExTaxPrice":0.0,"CustomFieldKey":2,"CustomFieldValueKey":37,"Required":true,"DataType":2,"SelectedKeys":[]}] So you could create a new blank json document...

Read More

Uploading files with Windows.Networking.BackgroundTransfer

Uploading (or downloading) large files to your web server has always been a dangerous process. Too many users with large files can cause server overload, users trying to upload files beyond the accepted server size, giving reliable feedback to the user while uploading and handling file interruptions are common causes. So when I had to build uploading large files into a UWP app I really didn’t want to rely on the standard HTTP Post method. Thankfully there is an awesome API built in to the framework called Background Transfer. Windows.Networking.BackgroundTransfer Background Transfer has some really great features that tie...

Read More

Update Live Tiles by using a background task

Background tasks come in handy when you want your app to do something even if it isn’t currently running on your device. Once of the most common things to do is update your live tile. Background tasks run in a separate process from your app and are installed at the same time you app is installed. Because it’s a separate process it needs to be a separate assembly. So the first thing we need to do is add a new project to your current apps solution. Let’s get started: Create the background task project In Solution Explorer, right click...

Read More

Quick and Easy API Versioning

There’s many different ways to handle API versioning. Some require a bit of set up but add lots of safe guards and help for you as a developer. For me I prefer what I call the set and forget method. The idea is that once you have decided to move on to a new version of your API you want to leave the old one as it is and just work on the new one without affecting any users who are still mapped to the old version. I recommend implementing versioning at the start of your development but it’s...

Read More
  • 1
  • 2