Anyone who has worked with Entity Framework will have had to manage with loading related entities. I believe many developers will agree the way that system works is difficult to reconcile with design patterns such as the Repository pattern. In this post, I’ll provide one quick and easy way to automatically load all related properties from the database.
Update 2018-11-26: Added the equivalent for EF Core.
There are many ways in which you can improve your efficiency and effectiveness as a software engineer. I will provide you a list of tools that will help you to become more productive.
Over the last few weeks, I made a few blog posts containing useful links for Microsoft’s certification exam 70-487: Developing Microsoft Azure and Web Services. I’m pleased to announce that I passed the exam with a score of 873. And because this is the third exam in the MCSD Web Applications track, I am now also a certified Microsoft Certified Solutions Developer.
Months behind schedule, I have begun preparations for my next exam: 70-487 Developing Microsoft Azure and Web Services. If I pass this one, I’ll be MCSD in Web Applications.
There are few developers who haven’t used log4net, it’s just one of those essential utilities that every self respecting professional should know of. In this post, I’ll talk about customizing the logging process with custom properties.
In this blog post we’ll take a look at NServiceBus, a popular open-source service for .NET. With an easy to follow tutorial, you’ll have a working service bus up and running within minutes.
For those eager to share their extraordinary bike rides (or other activities) from Strava, there’s an easy way to use Web API which I will explain in this post.
Recently I was asked what the difference was between **readonly **and **const **in C#, and I couldn’t really tell the exact difference. There are several good articles about this, like this StackOverflow article. In this article, I’ll stick to the very basics.
With the release of Visual Studio 2015 last week, I thought it would be a good time to inspect the new features that come with the newest version of C#. Although C# 6.0 is certainly not a major release from a developer’s perspective, there are some items that every developer will use in the coming years. In this post, I’ll show some examples on how to use these new features.
Today I passed the 70-483 Programming in C# exam. As any other Microsoft exam, the passing score is 700 on a total score of 1000. I scored way above my expectations, so I’m very happy that my efforts are rewarded with a MCP certificate. I can highly recommended experienced consultants and developers to take this exam. For beginning programmers ( < 1 year) this exam will probably be too difficult as there are many topics in scope of the exam. In order to motivate anyone who wants to take this exam, here is how I experienced the exam.
I see some pieces of the same error-prone code recur far too often in SharePoint. Probably most pervasive is the one to allow and not allow unsafe updates. In this post, I’ll provide a proper solution for this matter.
Every once in a while you’ll have a situation in which you temporarily have to use different (shared) settings and reset them if all work is done. An example of this is often seen in SharePoint, for instance disabling events when updating items in event receivers, or allowing unsafe updates. A workaround that I have seen a lot is that developers add a TRY/CATCH/FINAL block for each method they want to reset some objects. In this post, I’ll talk about an alternative way of achieving this behavior by the implementation if the IDisposable interface.
Console applications provide a quick and easy way (and also a little bit dirty) to test or fix parts of your application. It enables you to focus on the business logic rather than the GUI. Sometimes the output to the window is quite large – larger than the console window can show. In those cases you want to be able to persist the output to text files. In this post, I’ll show you how to do this.
In one of my previous posts, I talked about using SQLDependency as a mechanism for detecting triggers on certain SQL queries. In this post, I’ll talk about how to use this mechanism to display real-time data in web applications using SignalR.
Last week I rewrote some of my client’s code after having discovered a number of bugs. More specifically, a lot of errors came up in LINQ methods such as Where and Select. In order to capture what exactly was going wrong there, I have added a new extension method to the IEnumerable interface, allowing item-based exception handling on collections and LINQ statements.
At some point, any developer will have to write some code that must be executed at regular intervals. In SharePoint for instance, timerjobs were (!) very easy to create. In .NET, you could choose between scheduled tasks and windows services. While I was doing research on the ideal replacement for timerjobs in the new SharePoint app model, I came across Quartz.NET. In this post, I will show you which code you need to create timerjobs.
There are a few ways in which you can integrate your website or application with social media or other websites. Perhaps the easiest and most used way are the widgets or embedded HTML snippets. The Twitter embedded timeline is arguably the most famous example. It’s easy to use and doesn’t require much (if any) programming skills. It provides a familiar user experience that people know from using other websites. In many cases this is just what you need, but what if you wanted to make it look and feel like any other part of your website? In this post I will show you way of doing just that with WordPress blog posts.
I found the following amazing article with some code that works without any modifications. With SQLDependency, you can listen to database changes with a predefined query. If something happens to this result set (INSERT/DELETE/UPDATE) an event will be triggered, allowing you to take action.
When I first read about MEF (Managed Extensibility Framework), I thought it was a great concept to create plugin-based applications, allowing customers to customize some behavior of the application for instance. Putting the whole concept into reality is something different, so in this article I will give a brief overview of the steps to take to get started with MEF.
As you might have read in my previous post, I used SQL schemas to partition data between tenants. Being part of the true definition of SaaS, a new tenant should be up and running within minutes without any human intervention. With my suggested approach, we need to do two things:
- Registering a new tenant
- Attaching users to the tenant
In this article, I am going to focus on the first item whereas the second one shouldn’t be a big deal if you are planning to create software as a service.
An interesting feature in .NET 4.5 is the ability to process collection in parallel. Along with the async/await feature, you can really improve the performance of your application with a few simple steps. Whereas both components are documented really well, I thought this would be a walk in the park. However, you should pay attention when you want to return a collection that was modified in the parallel block. If you don’t, you might be missing a few items in the list.
In my previous post, I talked about the authorization process of the Spotify Web API. In this post, I will dig deeper into retrieving Spotify playlists.