Posts

Showing posts from November, 2018

How Dependency Injection Containers Work in C#?

Dependency Injection (DI) containers, such as Unity or DryIoc, help manage the creation and lifetime of object dependencies in C#. They facilitate the Inversion of Control (IoC) principle, allowing you to focus on writing clean, maintainable code without worrying about the complexities of instantiating dependencies manually. How DI Containers Work? Registration:  You define which concrete classes should be used to fulfill specific interface contracts. This allows the DI container to know what to instantiate when a class requests a particular dependency. Resolution:  When an instance of a class is requested, the DI container looks at the registered services, resolves the dependencies, and creates the object with the required dependencies injected. Lifetime Management:  The container manages the lifecycle of the dependencies. You can specify whether instances should be singleton (one instance for the entire application), transient (a new instance each time), or scoped (one ...

Difference between object,var, dynamic in C#

1. object,var,dynamic can store any type of value.object and dynamic no need to initilize at the time of declaration but var should be initilize at the time of declaration. 2. object is not type safe because compiler has little information about type. dynamic is not type safe because compiler does not have any information about type. var is type safe beacuse compiler have all information about stored value. 3. object and dynamic can be passed as method arguments and also a method can return object ,dynamic type. but var can't be pass as method arguments and also no method can return var type.