Items By Type: Tutorial

Including Static Resources In Razor Class Libraries In ASP.NET Core

17 October 2018 13:32

ASP.NET Core Razor Pages

Razor Class libraries (RCLs) were introduced in ASP.NET Core 2.1 as a way to package and distribute UI components to be referenced and consumed within a host application. You can see them as a fully functioning part of a web application packaged as a class libray. The templated management pages for ASP.NET Identity were included as a Razor Class Library in the project template in 2.1. The Identity UI RCL includes the Razor pages, Filters, a stub EmailService class that Identity uses, and local versions of both Bootstrap 3 and 4.

Click to read more about Including Static Resources In Razor Class Libraries In ASP.NET Core ...

Adding Sorting To Paging In ASP.NET Core Razor Pages

10 October 2018 08:35

ASP.NET Core Razor Pages

This article builds on the simple paging functionality that was added to a Razor Pages application in my last article by showing how to add sorting functionality so that the user can determine the order in which results are displayed.

Click to read more about Adding Sorting To Paging In ASP.NET Core Razor Pages ...

Simple Paging In ASP.NET Core Razor Pages

03 October 2018 07:49

ASP.NET Core Razor Pages

This article attempts to demonstrate how to implement simple paging functionality in a Razor Pages application. I will explain the basics behind paging, and then use BootStrap 4 to render a variety of paging links, without resorting to Nuget packages for link generation.

Click to read more about Simple Paging In ASP.NET Core Razor Pages ...

Customising Routing Conventions In Razor Pages

26 September 2018 07:39

ASP.NET Core Razor Pages

At its heart, the Razor Pages routing story is a simple one. It uses a convention of mapping URLs to files on disk. There are ways to customise how pages are found on an individual basis, but what if you want to change the default convention in its entirety? There is also a way to do that. And it's quite simple, as this article will demonstrate, using two real-world examples.

Click to read more about Customising Routing Conventions In Razor Pages ...

Using Unobtrusive Ajax In Razor Pages

17 September 2018 08:17

AJAX ASP.NET Core Razor Pages

There are a few demonstrations showing how to use the jQuery Unobtrusive AJAX library in ASP.NET Core, but existing examples tend to feature MVC applications. This article looks at how to use Unobtrusive AJAX in a Razor Pages setting, where it will help to remove a lot of the boilerplate associated with making AJAX requests.

Click to read more about Using Unobtrusive Ajax In Razor Pages ...

Partials and AJAX In Razor Pages

07 September 2018 15:57

AJAX ASP.NET Core Razor Pages

Updating portions of a page using AJAX and partial views is a routine task in ASP.NET MVC applications. The experience is little different in ASP.NET Core Razor Pages - not much, but enough to stump some people. Here is some advice on accomplishing this task, and a preview of some additional help coming in the near future.

Click to read more about Partials and AJAX In Razor Pages ...

Areas In Razor Pages

03 September 2018 08:01

ASP.NET Core Razor Pages

Support for Areas was added to Razor Pages with the release of ASP.NET Core 2.1. They have long been used in MVC applications as a way to separate logical chunks of large applications into semi-independent modules to facilitate team working etc. Here, I explore how to use areas in a Razor Pages application.

Click to read more about Areas In Razor Pages ...

Accessing The Model From Filters In Razor Pages

29 August 2018 08:23

ASP.NET Core Razor Pages

Support for filters was added to Razor Pages with the release of ASP.NET Core 2.1. Filters, for those unfamiliar with them, are components that enable the injection of processing at certain points within the Razor Page lifecycle. They differ from Middleware in that they provide access to the HttpContext. Razor Pages offers a number of different filter options. One of the things that you might want to do in a filter is to obtain data from an external resource (database, web service etc) and then use it in the PageModel or ViewData. Here, I take a look at how you can access the model or ViewData dictionary depending on the type of filter implementation that you choose.

Click to read more about Accessing The Model From Filters In Razor Pages ...

Query Types in Entity Framework Core

15 August 2018 13:46

Entity Framework ASP.NET Core

Query Types, introduced in Entity Framework Core 2.1 enable you to return non-entity types that map to tables or views and can serve as the return type from FromSql method calls.

Click to read more about Query Types in Entity Framework Core ...

Razor Pages, TypeScript and Knockout

16 July 2018 07:54

Javascript ASP.NET Core Razor Pages TypeScript

In this article, I look at the steps required to get TypeScript up and running in the context of a Razor Pages application. I discuss why you might want to do this, and I use Knockout for the purposes of demonstration. By the end of the article, I will have configured and used TypeScript to replicate part of the final code for the Single Page Application tutorial from learn.knockout.com.

Click to read more about Razor Pages, TypeScript and Knockout ...

Improved Cascading Dropdowns With Blazor

05 July 2018 13:27

C# Blazor

In my last article, I looked at the experimental Blazor framework, using Cascading Dropdown Lists as an entry point. Since then, some feedback from Steve Sanderson to a question I asked has shown me a better way to implement this pattern.

Click to read more about Improved Cascading Dropdowns With Blazor ...

Cascading Dropdowns With Blazor

24 May 2018 20:51

ASP.NET Core Blazor

Blazor is an experimental framework introduced by Steve Sanderson of Knockout.js fame (among other things) on the ASP.NET team. The premise of the framework is simple, but potentially game-changing for ASP.NET developers: it enables you to write your client side code in C#. What this means is that rather than having to chase after the latest Javascript-based hotness - Aurelia, React, Angular etc, only to find that they are dependent on learning a whole new load of frameworks, or that they are no longer flavour of the week, you just use the .NET skills that you already have to move your processing to the browser.

Click to read more about Cascading Dropdowns With Blazor ...

Working With JSON in Razor Pages

21 May 2018 13:49

ASP.NET Core Razor Pages

UI generation and processing within web applications is moving increasingly to the client. Data processing and storage is still undertaken on the server, with JSON being the preferred format for exchanging data between the server and the client. There are a number of ways in which you can generate JSON when working with Razor Pages. This article explores some of them.

Click to read more about Working With JSON in Razor Pages ...

Extending the Command Timeout in Entity Framework Core Migrations

26 March 2018 08:50

Entity Framework ASP.NET Core

Most migrations that you execute when working with Entity Framework Core are likely to be straightforward - resulting in nothing more than an adjustment to the database schema. Sometimes, however, you might also want to include a task that requires longer than the default command timeout value (30 seconds in SQL Server) such as importing a lot of data.

Click to read more about Extending the Command Timeout in Entity Framework Core Migrations ...

Publishing Razor Pages Applications - Gotchas

22 March 2018 08:15

ASP.NET Core Razor Pages

I have just completed an article covering publishing a Razor Pages application to IIS on my Razor Pages dedicated site: learnrazorpages.com. While writing it (and publishing revised versions of the site) I uncovered a few stumbling blocks that might catch others out. So I thought they were worth highlighting here in their own post.

Click to read more about Publishing Razor Pages Applications - Gotchas ...