Skip to main content

IOC Part 2 - Ninject How it works and how to use



Intro

This article is a follow-up to its predecessor Introduction to IOC AKA IOC Part 1, basically I am have chosen a dependency injection container that I have been acquainted with for some time now and I will be going in deep on how it works and how we can use it in a real life application.

First – Know Ninject

It is a dependency injection container that is used to separate application parts to be more loosely coupled, highly maintainable and then weirs them back with each other flexibly, so in Short it does IOC “you can check the previous article if you need more of understanding on what IOC really is here is the link  http://mohammedezzatawad.blogspot.com/2012/08/ioc-inversion-of-control-principle.html

Second – How it works

So that’s a good and a very important thing you need to know before using any framework, how does it work and to be precise the question you need to ask yourself is what is going on under the hood?, well as most of the Dependency Injection containers it is basically using reflection to analyze the types it is working with and to weir object implementations at runtime. It also uses the generation system the one that was introduced in CLR 2 AKA Microsoft dynamics which allows you to create types at runtime.

Third - Lets Use Ninject

For a start lets know where you can get the framework, you can either download it from their official site http://www.ninject.org/download.html  or you can download it using nugget.
Following there will be a blog post on how to use Ninject in a testing application 

Comments

Popular posts from this blog

Windows Phone 8 - Application bar command binding MVVM

This is a short post in which i will explain how on Windows phone 8 to bind the application bar button or menu item, first this is only a fix for the  BindableApplicationbar  which supports windows phone 7 only, i just made it support windows 8 no features added or anything. i have uploaded the dll file here so it can be accessible easily here is the link to download http://sdrv.ms/RApUal now that you got the link lets check how we gonna use it you can refer to BinableApplicationbar  or check out the code here that i actually used in my app and i already read it there !  Add a reference to the BindableApplicationBar library here is the link again  http://sdrv.ms/RApUal Add XML namespace declaration in your page's XAML: xmlns : bar ="clr-namespace:BindableApplicationBar;assembly=BindableApplicationBar" Set Bindable.ApplicationBar property on your page code as in the snippet below: < phone : PhoneApplicationPage >  ...

Windows 8 – XAML/C# how to Add multi push pins to map control Bing maps

Greetings readers I promised you in my previous post that I am gonna go a little bit deeper in the Bing map control and I will should more advanced scenarios and one is push pins, Basically I am going to tell you how you can add push pin to your map and also how to dynamically populate those push pins using binding Refer to my previous article Using bing maps part one  for more details cause I am going build on it so if you ever feel that you don’t understand something just click the link and spend a few minutes reading it, I promise you it will prove worthy. First lets add a normal push pin to our map  < Grid Background = " {StaticResource ApplicationPageBackgroundThemeBrush} " > < bm : Map x:Name = " MyMap " Width = " 640 " Height = " 480 " Credentials = " {StaticResource BingMapsApiKey} " > < bm : Map.Children > < bm : Pushpin x:Name = ...

Xamarin Forms: XAML Creating Custom Controls The MVVM Way

Intro For a growing UI page there always comes a need to create sub views that can be used inside a bigger view, and for that we need custom controls, which are controls that are derived either from a layout or a simple view which is the basic control for almost any UI component in Xamarin forms, and therefore for a start i will use that as an example. And in such example we will create a custom control with a set of bindable properties and explain how they work, also how to add an event that can also be bound to Commands Lets Create the control  I have just went ahead and created a custom control that inherits from Xamarin.Forms.View and have some properties such color and checked all properties to be bound to by the ViewModel serving as the datacontext of the this control. here is the code below using System; using Xamarin.Forms; namespace UserControls { public class CustomView : View { public Color Color { get ; s...