Posts

Showing posts with the label Dependency Injection

Dependency Injection for Azure Function

Enabling dependency injection on your Azure Function a little bit different than the usual process like you do on the .Net Core applications. Here I'm planning to share some tips and steps you should follow if you need to enable DI on Azure Functions with C#. I'm focusing on a function application created for HTTP Trigger. When you create a new project you will see a static class and method to run your function end-point.  1 2 3 4 5 6 7 8 9 10 11 public static class FunctionWithDI { [FunctionName("function-with-di")] public static async Task<IActionResult> Run( [HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req, ILogger log) { log.LogInformation( "C# HTTP trigger function processed...

Dependency Injection for .Net Core console application

Image
As many organizations are now migrating their on-premise applications to the cloud platform now there are many requirements to convert legacy .Net application written in .Net Fullframework to .Net Core.  In this article, I want to share a simple way to enable the .Net core dependency injection, especially on a console application. If you create a new Asp .Net Web API or Web App the project scaffolding template will provide you the initial code for dependency injection. But console applications you will need to do as below. First I will start by creating a new project. I use the visual code terminal to create a new project called "sample-console-app" so the project name will be constructing from the directory name where you execute the below command.  > dotnet new console The above command will create you the project and you will see your project view like below. You can run the below commands to restore dependencies and run the application. > dotnet restore > dotn...

Storage Table - Easy data access layer

You can simply use the below code structure when you want to write a data access layer for Azure Storage Table.  Use blow Interface as the skeleton of your data access class.       public interface ITableStorage<T>     {         Task<List<T>> GetAllAsync(string partitionKey);         Task<List<T>> RetrieveEntityAsync(string partitionKey, string rowPrefix);         Task<T> GetSingleAsync(T entity);         Task<T> GetSingleAsync(string partitionKey, string rowKey);         Task InsertEntityAsync(T entity, bool forInsert = true);         Task DeleteEntityAsync(T entity);         Task DeleteSingleAsync(string partitionKey, string rowKey);         Task<List<T>> RetrieveAsync(string partitionKey);     } Here is the generic concrete cl...