Book Image

Mastering ASP.NET Web API

By : Mithun Pattankar
Book Image

Mastering ASP.NET Web API

By: Mithun Pattankar

Overview of this book

Microsoft has unified their main web development platforms. This unification will help develop web applications using various pieces of the ASP.NET platform that can be deployed on both Windows and LINUX. With ASP.NET Core (Web API), it will become easier than ever to build secure HTTP services that can be used from any client. Mastering ASP.NET Web API starts with the building blocks of the ASP.NET Core, then gradually moves on to implementing various HTTP routing strategies in the Web API. We then focus on the key components of building applications that employ the Web API, such as Kestrel, Middleware, Filters, Logging, Security, and Entity Framework.Readers will be introduced to take the TDD approach to write test cases along with the new Visual Studio 2017 live unit testing feature. They will also be introduced to integrate with the database using ORMs. Finally, we explore how the Web API can be consumed in a browser as well as by mobile applications by utilizing Angular 4, Ionic and ReactJS. By the end of this book, you will be able to apply best practices to develop complex Web API, consume them in frontend applications and deploy these applications to a modern hosting infrastructure.
Table of Contents (14 chapters)

Logging errors to a file using NLog

NLog is one of the third-party providers that we can use for logging information in ASP.NET Core. We will be logging to a file in this case. However, we can use NLog to log to a database or cloud as well.

To know more about NLog, refer to https://github.com/NLog/NLog.Extensions.Logging.

Using the NuGet package manager, add NLog-related packages:

"NLog.Extensions.Logging": "1.0.0-rtm-beta5" 
"NLog.Web.AspNetCore": "4.4.1"  
At the time of writing this book, NLog is still in beta. Refer to the preceding link for updates.

In the Configure method of the Startup class, modify the method to include NLog for logging information to the file:

    public void Configure(IApplicationBuilder app, IHostingEnvironment env,
ILoggerFactory loggerFactory) { loggerFactory.AddNLog(); app.AddNLogWeb...