Book Image

ASP.NET Core MVC 2.0 Cookbook

By : Jason De Oliveira, Engin Polat, Stephane Belkheraz
Book Image

ASP.NET Core MVC 2.0 Cookbook

By: Jason De Oliveira, Engin Polat, Stephane Belkheraz

Overview of this book

The ASP.NET Core 2.0 Framework has been designed to meet all the needs of today’s web developers. It provides better control, support for test-driven development, and cleaner code. Moreover, it’s lightweight and allows you to run apps on Windows, OSX and Linux, making it the most popular web framework with modern day developers. This book takes a unique approach to web development, using real-world examples to guide you through problems with ASP.NET Core 2.0 web applications. It covers Visual Studio 2017- and ASP.NET Core 2.0-specifc changes and provides general MVC development recipes. It explores setting up .NET Core, Visual Studio 2017, Node.js modules, and NuGet. Next, it shows you how to work with Inversion of Control data pattern and caching. We explore everyday ASP.NET Core MVC 2.0 patterns and go beyond it into troubleshooting. Finally, we lead you through migrating, hosting, and deploying your code. By the end of the book, you’ll not only have explored every aspect of ASP.NET Core MVC 2.0, you’ll also have a reference you can keep coming back to whenever you need to get the job done.
Table of Contents (26 chapters)
Title Page
Copyright and Credits
Packt Upsell
Contributors
Preface
Index

Using .NET Cache with MemoryCache


In this recipe, we will learn how to use the default Cache object in ASP.NET Core to cache CLR objects.

Getting ready

We will create an empty ASP.NET Core web application running on .NET Framework with VS 2017.

How to do it...

  1. First, we import the following dependency to be able to use caching in ASP.NET Core applications:
"Microsoft.Extensions.Caching.Memory": "2.0.0"  
  1. Next, we import the MVC dependency:
"Microsoft.AspNetCore.Mvc": "2.0.0"  
  1. We can now add the cache middleware:
public void ConfigureServices(IServiceCollection services) 
{ 
    services.AddMemoryCache(); 
    services.AddMvc(); 
} 
public void Configure(IApplicationBuilder app) 
{ 
    app.UseMvc(routes => 
    { 
        routes.MapRoute( 
        name: "default", 
        template: "{controller=Home}/{action=Index}/{id?}"); 
    }); 
} 
  1. Next, we create two folders at the project root, Controllers and Views.
  2. We then create HomeController.cs by right-clicking on the Controllers directory and selecting...