Home / Articles posted by Remo Gloor

About Remo Gloor

My name is Remo Gloor and I’m working as a software architect at bbv Software Services AG in Zug, Switzerland. My first expiriences with computers were a a little boy with basic programming on a C64, later Pascal an C on an Intel 8080. After finishing my study in software engineering I started working with C#. Currently, I'm one of two Main Developers of the well known Ninject IoC containers. My other interests beside Ninject are TDD, Scrum and software architecture in general.

Future of Activation blocks

Since I started using and working on Ninject I have never seen a good use case for Activations Blocks like they are implemented at the moment. That’s why I’m currently planning on changing their behavior to give them more sense. This blog post will explain what I have in mind at the moment.
Continue reading


ASP.NET Provider dependency injection with Ninject 3.0.0

Unfortunately, ASP.NET providers like the MembershipProvider and RolesProvider aren’t designed for dependency injection. Many users have problems to assign dependencies to them. In this blog post I’ll show a way to how this can be done using Ninject.Web.Common 3.0.0. This solution works for MVC and WebForms. Continue reading


Ninject.Extensions.Factory introduction

The new release of Ninject 3.0 comes with a new extension that adds support for factories to Ninject. It supports factory interfaces, Func and Lazy. In this blog post I will explain how they are used.

Why using factories?
The recommended way to use IoC containers is that the composition root of the application is the only place where the container is accessed. Unfortunately many application can’t create everything at once during the application start or at the beginning of a web/wcf request because not everything is known at this moment. Therefore these applications need a way to create new instances using the kernel at a later point. Preferably we want to do this without introducing a reference to the container. This is where factories come into play. Instead of injecting the kernel into classes that need to create new instances we inject a factory. This factory is responsible to create the new instances using the kernel. There are two ways to implement such a factory: A factory interface and as a Func or Lazy.
Continue reading


New Features and changes of Ninject 3.0

Ninject 3.0 release candidate has gone live. This release introduces some new feature and some changes in its behavior. This blog post will give you detailed information what has changed. It covers mainly Ninject core. Other blog posts that describe the changes and the new extensions will follow soon.
Continue reading


Ninject constructor selection preview

Ninject 2.4 will introduce the ability to configure which constructor shall be used and to configure constructor arguments without having to use magic strings to define for which argument. In this post I will give a preview on how this works.

Continue reading


Workaround for WP7 GetMethod reflection

WP7 currently has a bug which does not allow to call GetMethod and GetMethods if the type has a overridden generic method or the requested method is a overridden generic method. In this post I will show how to workaround this Bug.

Continue reading


Ninject Nuget packages updated to Nuget 1.3

Recently we have updated all Ninject Nuget packages to Nuget 1.3. In order to use them you have to update your client to 1.3 as well. This update brought a few improvements:

Continue reading


Ninject and Ninject.MVC3 released

I just released Ninject and Ninject.MVC3 Both are bugfix releases. In this Blogpost I’ll explain if you have to update and what changes you need to do in case you are using th NuGet version of Ninject.MVC3.
Continue reading


Ninject.MVC3 and Ninject.Web.MVC3 merged to one package

With Ninject.MVC3 available from NuGet Ninject.MVC3 and Ninject.Web.MVC3 got merged into one project providing the advantage or both.
Continue reading


How to use the additional Ninject Scopes of NamedScope

The Named Scope extension adds the three additional Scopes InCallScope, InNamedScope and InParentScope to Ninject. In this Blogpost I want to explain how they are used. Some parts of this post expect that you have a basic knowledge about the Context Preservation extension. Consider reading my blog post about the Context Preservation Extension before reading this one.

Continue reading