Found 2628 Articles for Csharp

How to display methods and properties using reflection in C#?

Nizamuddin Siddiqui
Updated on 05-Dec-2020 06:43:53

197 Views

Reflection is the process of describing the metadata of types, methods and fields in a code. The namespace System.Reflection enables you to obtain data about the loaded assemblies, the elements within them like classes, methods and value types. There are numerous classes of System.Reflection but the most commonly used ones are Assembly, AssemblyName, ConstructorInfo, MethodInfo, ParameterInfo, EventInfo, PropertyInfo, and MemberInfo.Examplestatic void Main(string[] args){    TypeInfo myType = typeof(TextInfo).GetTypeInfo();    IEnumerable properties = myType.DeclaredProperties;    IEnumerable methods = myType.DeclaredMethods;    Console.WriteLine(myType);    Console.WriteLine(properties);    Console.WriteLine(methods);    StringBuilder strBuilder = new StringBuilder();    Console.WriteLine();    strBuilder.Append("The properties are:");    foreach (PropertyInfo p ... Read More

How to implement dependency injection using Interface-based injection in C#?

Nizamuddin Siddiqui
Updated on 05-Dec-2020 06:42:43

3K+ Views

The process of injecting (converting) coupled (dependent) objects into decoupled (independent) objects is called Dependency Injection.Types of Dependency InjectionThere are four types of DI −Constructor InjectionSetter InjectionInterface-based injectionService Locator InjectionInterface InjectionInterface Injection is similar to Getter and Setter DI, the Getter, and Setter DI use default getter and setter but Interface Injection uses support interface a kind of explicit getter and setter which sets the interface property.Examplepublic interface IService{    string ServiceMethod(); } public class ClaimService:IService{    public string ServiceMethod(){       return "ClaimService is running";    } } public class AdjudicationService:IService{    public string ServiceMethod(){       ... Read More

How to implement Dependency Injection using Property in C#?

Nizamuddin Siddiqui
Updated on 05-Dec-2020 06:41:09

1K+ Views

The process of injecting (converting) coupled (dependent) objects into decoupled (independent) objects is called Dependency Injection.Types of Dependency InjectionThere are four types of DI −Constructor InjectionSetter InjectionInterface-based injectionService Locator InjectionSetter InjectionGetter and Setter Injection injects the dependency by using default public properties procedure such as Gettter(get(){}) and Setter(set(){}). Examplepublic interface IService{    string ServiceMethod(); } public class ClaimService:IService{    public string ServiceMethod(){       return "ClaimService is running";    } } public class AdjudicationService:IService{    public string ServiceMethod(){       return "AdjudicationService is running";    } } public class BusinessLogicImplementation{    private IService _client;    public IService Client{   ... Read More

How to implement Open Closed principle using C#?

Nizamuddin Siddiqui
Updated on 05-Dec-2020 06:39:48

452 Views

Software entities like classes, modules and functions should be open for extension but closed for modifications.Definition − The Open Close Principle states that the design and writing of the code should be done in a way that new functionality should be added with minimum changes in the existing code. The design should be done in a way to allow the adding of new functionality as new classes, keeping as much as possible existing code unchanged.ExampleCode Before Open Closed Principleusing System; using System.Net.Mail; namespace SolidPrinciples.Open.Closed.Principle.Before{    public class Rectangle{       public int Width { get; set; }     ... Read More

How to implement Single Responsibility Principle using C#?

Nizamuddin Siddiqui
Updated on 05-Dec-2020 06:37:34

282 Views

A class should have only one reason to change.Definition − In this context, responsibility is considered to be one reason to change.This principle states that if we have 2 reasons to change for a class, we have to split the functionality in two classes. Each class will handle only one responsibility and if in the future we need to make one change we are going to make it in the class which handles it. When we need to make a change in a class having more responsibilities the change might affect the other functions related to the other responsibility of ... Read More

How to get formatted JSON in .NET using C#?

Nizamuddin Siddiqui
Updated on 05-Dec-2020 06:35:03

3K+ Views

Use Namespace Newtonsoft.Json.Formatting Newtonsoft.Json.Formatting provides formatting options to Format the JsonNone − No special formatting is applied. This is the default.Indented − Causes child objects to be indented according to the Newtonsoft.Json.JsonTextWriter.Indentation and Newtonsoft.Json.JsonTextWriter.IndentChar settings.Examplestatic void Main(string[] args){    Product product = new Product{       Name = "Apple",       Expiry = new DateTime(2008, 12, 28),       Price = 3.9900M,       Sizes = new[] { "Small", "Medium", "Large" }    };    string json = JsonConvert.SerializeObject(product, Formatting.Indented);    Console.WriteLine(json);    Product deserializedProduct = JsonConvert.DeserializeObject(json);    Console.ReadLine(); } class Product{    public String[] Sizes ... Read More

How to run multiple async tasks and waiting for them all to complete in C#?

Nizamuddin Siddiqui
Updated on 05-Dec-2020 06:33:01

3K+ Views

The Task.WaitAll blocks the current thread until all other tasks have completed execution.The Task.WhenAll method is used to create a task that will complete if and only if all the other tasks have complete. In the 1st example, we could see that when using Task.WhenAll the task complete is executed before the other tasks are completed. This means that Task.WhenAll doesn’t block the execution. And in the 2nd example, we could see that when using Task.WaitAll the task complete is executed only after all the other tasks are completed. This means that Task.WaitAll block the execution.Examplestatic void Main(string[] args){   ... Read More

What is the difference between All and Any in C# Linq?

Nizamuddin Siddiqui
Updated on 05-Dec-2020 06:30:58

2K+ Views

Any() method returns true if at least one of the elements in the source sequence matches the provided predicate. Otherwise, it returns false. On the other hand, the All() method returns true if every element in the source sequence matches the provided predicate. Otherwise, it returns falseExamplestatic void Main(string[] args){    IEnumerable doubles = new List { 1.2, 1.7, 2.5, 2.4 };    bool result = doubles.Any(val => val < 1);    System.Console.WriteLine(result);    IEnumerable doubles1 = new List { 0.8, 1.7, 2.5, 2.4 };    bool result1 = doubles1.Any(val => val < 1);    System.Console.WriteLine(result1);    Console.ReadLine(); }OutputFalse TrueExamplestatic ... Read More

What is dependency inversion principle and how to implement in C#?

Nizamuddin Siddiqui
Updated on 05-Dec-2020 06:29:13

662 Views

High-level modules should not depend on low-level modules. Both should depend on abstractions.Abstractions should not depend on details. Details should depend on abstractions.This principle is primarily concerned with reducing dependencies among the code modules.ExampleCode Before Dependency Inversionusing System; namespace SolidPrinciples.Dependency.Invertion.Before{    public class Email{       public string ToAddress { get; set; }       public string Subject { get; set; }       public string Content { get; set; }       public void SendEmail(){          //Send email       }    }    public class SMS{       public ... Read More

What is proxy design pattern and how to implement it in C#?

Nizamuddin Siddiqui
Updated on 25-Nov-2020 12:19:51

171 Views

The Proxy pattern provides a surrogate or placeholder object to control access to another, different object.The Proxy object can be used in the same manner as its containing objectThe ParticipantsThe Subject defines a common interface for the RealSubject and the Proxy such that the Proxy can be used anywhere the RealSubject is expected.The RealSubject defines the concrete object which the Proxy represents.The Proxy maintains a reference to the RealSubject and controls access to it. It must implement the same interface as the RealSubject so that the two can be used interchangeablyProbably. If you've ever had a need to change the ... Read More

Advertisements