How to pass Microsoft Exam 70-486 (Developing ASP.NET MVC 4 Web Applications) in 30 days

01 February, 2014.

Before you continue reading this blog, you need to be aware of the following; This is not a “quick fix” or an “easy solution”. I have not discovered some secret formula to guarantee you pass with 100% marks every time. I am not trying to sell you anything. The exam is genuinely challenging and the only way you are going to pass is by working hard! You will not find any brain dumps here! If you’re afraid of working hard to achieve your goals, you best leave now … Still Here? Congratulations, you…

Continue reading

5 easy security enhancements for your ASP .NET application

26 January, 2014.

Protecting web applications against unauthorised access is somewhat of a dark art, but there are simple steps you can take to ensure that you are protected against the most common security risks.Cross Site Request Forgery (CSRF / XSRF)Problem: Cross site request forgery (CSRF / XSRF) is the process of tricking a legitimate user of your website into posting data to the web server without their knowledge. This type of attack is typically executed using a malicious link in an email, or by social…

Continue reading

10 things every software developer should do in 2014

18 January, 2014.

It is important in the world of software development that every developer re-train and update their skills regularly. Failure to do so will probably result in stagnation and loss of earnings over an extended period.There has been a massive shift over the last few years from development of traditional desktop applications being written in Windows Forms (WinForms) and Windows Presentation Foundation (WPF) to the web and mobile. Open standards, including HTML 5 and CSS 3, have been driving a new…

Continue reading

Check TFS Online service status using C#

10 January, 2014.

If you use TFS Online you may have experienced some unexpected downtime over the last few months. Whilst the service is getting better and better all the time, downtime is still an issue. I have written a little screen scraping tool based on the HTML Agility Pack that will scrape the service status page and report back the current status. Add the following class to your project;The usage for this code is as follows;I hope you find this little helper useful. Please leave a comment below.

Continue reading

15 reasons why I can’t work without JetBrains ReSharper

28 December, 2013.

If you know me personally, you’ll know how much I love JetBrains ReSharper, I use it every day and I swear by it. People often ask me what I like most about it, and here I often stutter. The truth is, there is no one killer reason why I love ReSharper… it’s a combination of many small features that make it a tool I literally cannot work without. I’m going to explain my 15 favourite features, and urge you to give it a try. If you’re still not sold by the end of this, you’re never going to be…

Continue reading

C# Create a custom XML configuration section

21 December, 2013.

It is common when developing either Desktop or Web based applications to need to persist settings in an easily updateable location. Developers often choose to add normal application settings in the form of key value pairs, as shown below, and this is a great approach when you only have a small number of settings. However, as your applications configuration becomes more complicated, this approach soon becomes hard for the developer and end user alike. This blog post looks at how you can create a…

Continue reading

How to create a new Outlook 2013 Email using C# in 3 simple steps

14 December, 2013.

It has traditionally been quite painful to interact with any part of the Microsoft Office product family from a C# application, but thanks to the introduction of dynamics and optional parameters over recent years, the process has dramatically improved.Step 1 - Prerequisites and Assembly ReferencesBefore doing anything, it is important to note that you must have Microsoft Office 2013 installed for this to work. Seems obvious, but, its still worth mentioning. You also need two references;The…

Continue reading

In the spotlight - Demystifying IQueryable (Entity Framework 6)

24 November, 2013.

I’m not afraid to admit it. I can’t be the only one who has been confused by IQueryable when working with Entity Framework or LINQ to SQL. When using the web to research the topic, I have seen many conflicting blog posts and contradicting answers on StackOverflow. I have read various posts on MSDN about the subject, and I find them difficult to understand and incomplete. I seek to at least attempt to clarify the subject a little with this post. Entity Framework has become such a powerful object…

Continue reading

Exploring logging in Entity Framework 6

13 November, 2013.

A project I am working on at the minute was recently upgraded to use Entity Framework 6.0.1. There were many reasons why we wanted to do this, but one of the most compelling reasons was the new logging (SQL Interception) functionality that ships out of the box. A colleague demonstrated this new functionality and I immediately noticed a problem (limitation if you will) that I foresaw becoming a bigger issue when the time comes to performance tune the application.Implementing simple loggingTake…

Continue reading