---
title: "Blog - Muhammad Rehan Saeed"
description: "Blog posts and more authored by Muhammad Rehan Saeed."
canonical_url: "https://rehansaeed.com/6/"
meta:
  author: "Muhammad Rehan Saeed"
  "og:description": "Blog posts and more authored by Muhammad Rehan Saeed."
  "og:image": "https://rehansaeed.com/_og/s/o_6b393e786ee6dc1a.png"
  "og:image:alt": "Blog - Page 6 - Muhammad Rehan Saeed"
  "og:image:height": "630"
  "og:image:type": image/png
  "og:image:width": "1200"
  "og:title": Blog
  "twitter:image": "https://rehansaeed.com/_og/s/o_6b393e786ee6dc1a.png"
  "twitter:image:alt": "Blog - Page 6 - Muhammad Rehan Saeed"
---

> Index of every page on this site: [llms.txt](https://rehansaeed.com/llms.txt)

![Muhammad Rehan Saeed](https://rehansaeed.com/_ipx/f_png&s_240x240/images/author/Muhammad-Rehan-Saeed/Logo-192x192.png)

# [Muhammad Rehan Saeed](https://rehansaeed.com)

Software Developer at Microsoft, YouTuber, Open Source Contributor and Blogger

[Youtube](https://www.youtube.com/c/MuhammadRehanSaeed) [Twitch](https://www.twitch.tv/rehansaeeduk) [GitHub](https://github.com/RehanSaeed) [LinkedIn](https://www.linkedin.com/in/muhammad-rehan-saeed) [Stack Overflow](https://stackoverflow.com/users/1212017/muhammad-rehan-saeed) [Bluesky](https://bsky.app/profile/rehansaeed.bsky.social) [Mastodon](https://hachyderm.io/@RehanSaeed) Email [RSS](https://rehansaeed.com/rss.xml)

![Microsoft .NET](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Microsoft-.NET-1366x768.png)

## [Custom Project Templates Using dotnet new](https://rehansaeed.com/custom-project-templates-using-dotnet-new/)

How to create project templates using dotnet new and the template.json file. How to share project templates by creating NuGet packages.

Posted 18 January 2017 - **4 min read**

[.NET](https://rehansaeed.com/tag/net/) [dotnet](https://rehansaeed.com/tag/dotnet/) [dotnet new](https://rehansaeed.com/tag/dotnet-new/) [NuGet](https://rehansaeed.com/tag/nu-get/) [Project Template](https://rehansaeed.com/tag/project-template/)

![Reactive Extensions](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Reactive-Extensions-1366x768.png)

## [Reactive Extensions (Rx) - Part 8 - Timeouts](https://rehansaeed.com/reactive-extensions-rx-part-8-timeouts/)

Should you use Reactive Extensions (Rx) to do timeouts in .NET? It turns out it's better to use CancellationTokenSource in the Task Parallel Library (TPL).

Posted 2 January 2017 - **1 min read**

[.NET](https://rehansaeed.com/tag/net/) [Base Class Library](https://rehansaeed.com/tag/base-class-library/) [BCL](https://rehansaeed.com/tag/bcl/) [Reactive Extensions](https://rehansaeed.com/tag/reactive-extensions/) [Rx](https://rehansaeed.com/tag/rx/) [Task Parallel Library](https://rehansaeed.com/tag/task-parallel-library/) [TPL](https://rehansaeed.com/tag/tpl/)

![Search Engine-Optimization-SEO](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Search-Engine-Optimization-SEO-1366x768.png)

## [SEO Friendly URL's for ASP.NET Core](https://rehansaeed.com/seo-friendly-urls-asp-net-core/)

An SEO friendly URL is human readable and gives your site a higher page rank. Learn how to implement SEO friendly URL's using ASP.NET Core.

Posted 17 December 2016 - **7 min read**

[.NET](https://rehansaeed.com/tag/net/) [ASP.NET Core](https://rehansaeed.com/tag/asp-net-core/) [ASP.NET MVC](https://rehansaeed.com/tag/asp-net-mvc/) [.NET Boxed](https://rehansaeed.com/tag/net-boxed/) [Friendly URL](https://rehansaeed.com/tag/friendly-url/) [Search Engine Optimization (SEO)](https://rehansaeed.com/tag/search-engine-optimization-seo/)

![Application Insights](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Application-Insights-1366x768.png)

## [Making Application Insights Fast & Secure](https://rehansaeed.com/making-application-insights-fast-and-secure/)

Implementing Application Insights into your ASP.NET Core application with performance and security as a top priority in this advanced scenario.

Posted 11 December 2016 - **4 min read**

[.NET](https://rehansaeed.com/tag/net/) [Application Insights](https://rehansaeed.com/tag/application-insights/) [ASP.NET Core](https://rehansaeed.com/tag/asp-net-core/) [ASP.NET MVC](https://rehansaeed.com/tag/asp-net-mvc/) [ASP.NET Core Boilerplate](https://rehansaeed.com/tag/asp-net-core-boilerplate/) [C#](https://rehansaeed.com/tag/c/) [Content Security Policy](https://rehansaeed.com/tag/content-security-policy/)

![Microsoft .NET](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Microsoft-.NET-1366x768.png)

## [The Dotnet Watch Tool](https://rehansaeed.com/the-dotnet-watch-tool/)

The dotnet watch tool is a file watcher for dotnet that restarts the application when changes in the source code are detected.

Posted 10 September 2016 - **2 min read**

[.NET](https://rehansaeed.com/tag/net/) [ASP.NET Core](https://rehansaeed.com/tag/asp-net-core/) [ASP.NET MVC](https://rehansaeed.com/tag/asp-net-mvc/) [.NET Boxed](https://rehansaeed.com/tag/net-boxed/) [dotnet watch](https://rehansaeed.com/tag/dotnet-watch/) [launchSettings.json](https://rehansaeed.com/tag/launch-settings-json/) [project.json](https://rehansaeed.com/tag/project-json/) [Visual Studio](https://rehansaeed.com/tag/visual-studio/)

![NGINX](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/NGINX-1366x768.png)

## [NGINX for ASP.NET Core In-Depth](https://rehansaeed.com/nginx-asp-net-core-depth/)

NGINX is a popular open source web server. It can act as a reverse proxy server for ASP.NET Core web apps. How to configure NGINX for ASP.NET Core.

Posted 21 August 2016 - **11 min read**

[ASP.NET Core](https://rehansaeed.com/tag/asp-net-core/) [.NET Boxed](https://rehansaeed.com/tag/net-boxed/) [Brotli](https://rehansaeed.com/tag/brotli/) [HTTP 2.0](https://rehansaeed.com/tag/http-2-0/) [IIS](https://rehansaeed.com/tag/iis/) [Internet Information Services (IIS)](https://rehansaeed.com/tag/internet-information-services-iis/) [Kestrel](https://rehansaeed.com/tag/kestrel/) [NGINX](https://rehansaeed.com/tag/nginx/) [Web Server](https://rehansaeed.com/tag/web-server/)

![Fluent Interface-All-The-Things](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Fluent-Interface-All-The-Things-1366x768.png)

## [ASP.NET Core Fluent Interface Extensions](https://rehansaeed.com/asp-net-core-fluent-interface-extensions/)

Using the fluent interface style in with ASP.NET Core Fluent Interface Extension methods. Building on top of the work done by Khalid Abuhakmeh.

Posted 26 June 2016 - **2 min read**

[ASP.NET Core](https://rehansaeed.com/tag/asp-net-core/) [.NET Boxed](https://rehansaeed.com/tag/net-boxed/)

![Azure Active-Directory-Versus-Identity-Server](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Azure-Active-Directory-Versus-Identity-Server-1366x768.png)

## [Azure Active Directory Versus Identity Server](https://rehansaeed.com/azure-active-directory-versus-identity-server/)

A comparison between Azure Active Directory and Identity Server covering the advantages and disadvantages of both.

Posted 20 May 2016 - **6 min read**

[Active Directory](https://rehansaeed.com/tag/active-directory/) [Azure Active Directory](https://rehansaeed.com/tag/azure-active-directory/) [Cloudflare](https://rehansaeed.com/tag/cloudflare/) [Connect Health](https://rehansaeed.com/tag/connect-health/) [IdentityServer](https://rehansaeed.com/tag/identity-server/) [IdentityServer4](https://rehansaeed.com/tag/identity-server4/) [Two-Factor Authentication](https://rehansaeed.com/tag/two-factor-authentication/)

![Social Media](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Social-Media-1366x768.png)

## [Social TagHelpers for ASP.NET Core](https://rehansaeed.com/social-taghelpers-for-asp-net-core/)

Enhance the experience of sharing a page from your site through the use of social media meta tags implemented with ASP.NET Core TagHelpers.

Posted 19 March 2016 - **5 min read**

[.NET](https://rehansaeed.com/tag/net/) [ASP.NET Core](https://rehansaeed.com/tag/asp-net-core/) [ASP.NET MVC](https://rehansaeed.com/tag/asp-net-mvc/) [ASP.NET MVC 5](https://rehansaeed.com/tag/asp-net-mvc-5/) [.NET Boxed](https://rehansaeed.com/tag/net-boxed/) [GitHub](https://rehansaeed.com/tag/git-hub/) [HTML Helper](https://rehansaeed.com/tag/html-helper/) [TagHelper](https://rehansaeed.com/tag/tag-helper/)

![Make Security-Easy](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Make-Security-Easy-1366x768.png)

## [Subresource Integrity TagHelper Using ASP.NET Core - Part 2](https://rehansaeed.com/subresource-integrity-taghelper-using-asp-net-core-part-2/)

Use an ASP.NET Core TagHelper to implement Subresource Integrity (SRI) to ensure that external resources have not been tampered with. With is part 2.

Posted 12 March 2016 - **4 min read**

[.NET](https://rehansaeed.com/tag/net/) [ASP.NET Community Standup](https://rehansaeed.com/tag/asp-net-community-standup/) [ASP.NET Core](https://rehansaeed.com/tag/asp-net-core/) [ASP.NET MVC](https://rehansaeed.com/tag/asp-net-mvc/) [.NET Boxed](https://rehansaeed.com/tag/net-boxed/) [C#](https://rehansaeed.com/tag/c/) [Content Delivery Network (CDN)](https://rehansaeed.com/tag/content-delivery-network-cdn/) [Cryptography](https://rehansaeed.com/tag/cryptography/) [Damian Edwards](https://rehansaeed.com/tag/damian-edwards/) [Jon Galloway](https://rehansaeed.com/tag/jon-galloway/)

[Previous](https://rehansaeed.com/5/)

**Page 6 of 11**

[Next](https://rehansaeed.com/7/)

```json
{"@context":"https://schema.org","@graph":[{"@id":"https://rehansaeed.com/#website","@type":"WebSite","description":"Software Developer at Microsoft, YouTuber, Open Source Contributor and Blogger","inLanguage":"en-GB","name":"Muhammad Rehan Saeed","url":"https://rehansaeed.com/","author":{"@id":"https://rehansaeed.com/#identity"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://rehansaeed.com/?search={search_term_string}"},"query-input":"required name=search_term_string"}],"publisher":{"@id":"https://rehansaeed.com/#publisher"}},{"@id":"https://rehansaeed.com/6/#webpage","description":"Blog posts and more authored by Muhammad Rehan Saeed.","name":"Blog","url":"https://rehansaeed.com/6/","@type":["WebPage","CollectionPage"],"breadcrumb":{"@id":"https://rehansaeed.com/6/#breadcrumb"},"isPartOf":{"@id":"https://rehansaeed.com/#website"},"potentialAction":[{"@type":"ReadAction","target":["https://rehansaeed.com/6/"]}]},{"@id":"https://rehansaeed.com/#identity","@type":"Person","name":"Muhammad Rehan Saeed","url":"https://rehansaeed.com/about/","image":{"@id":"https://rehansaeed.com/#/schema/image/1"},"sameAs":["https://github.com/RehanSaeed","https://www.linkedin.com/in/muhammad-rehan-saeed","https://stackoverflow.com/users/1212017/muhammad-rehan-saeed","https://www.youtube.com/c/MuhammadRehanSaeed","https://www.twitch.tv/rehansaeeduk"]},{"@id":"https://rehansaeed.com/#publisher","@type":"Organization","logo":"https://rehansaeed.com/images/schema/Publisher-600x60.png","name":"Muhammad Rehan Saeed","url":"https://rehansaeed.com"},{"@id":"https://rehansaeed.com/6/#/schema/item-list/1","@type":"ItemList","itemListElement":[{"@type":"ListItem","name":"Custom Project Templates Using dotnet new","url":"https://rehansaeed.com/custom-project-templates-using-dotnet-new/","position":1},{"@type":"ListItem","name":"Reactive Extensions (Rx) - Part 8 - Timeouts","url":"https://rehansaeed.com/reactive-extensions-rx-part-8-timeouts/","position":2},{"@type":"ListItem","name":"SEO Friendly URL's for ASP.NET Core","url":"https://rehansaeed.com/seo-friendly-urls-asp-net-core/","position":3},{"@type":"ListItem","name":"Making Application Insights Fast & Secure","url":"https://rehansaeed.com/making-application-insights-fast-and-secure/","position":4},{"@type":"ListItem","name":"The Dotnet Watch Tool","url":"https://rehansaeed.com/the-dotnet-watch-tool/","position":5},{"@type":"ListItem","name":"NGINX for ASP.NET Core In-Depth","url":"https://rehansaeed.com/nginx-asp-net-core-depth/","position":6},{"@type":"ListItem","name":"ASP.NET Core Fluent Interface Extensions","url":"https://rehansaeed.com/asp-net-core-fluent-interface-extensions/","position":7},{"@type":"ListItem","name":"Azure Active Directory Versus Identity Server","url":"https://rehansaeed.com/azure-active-directory-versus-identity-server/","position":8},{"@type":"ListItem","name":"Social TagHelpers for ASP.NET Core","url":"https://rehansaeed.com/social-taghelpers-for-asp-net-core/","position":9},{"@type":"ListItem","name":"Subresource Integrity TagHelper Using ASP.NET Core - Part 2","url":"https://rehansaeed.com/subresource-integrity-taghelper-using-asp-net-core-part-2/","position":10}]},{"@id":"https://rehansaeed.com/6/#breadcrumb","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","name":"Blog","item":"https://rehansaeed.com/","position":1},{"@type":"ListItem","name":"Page 6","item":"https://rehansaeed.com/6/","position":2}]},{"@id":"https://rehansaeed.com/#/schema/image/1","@type":"ImageObject","contentUrl":"https://rehansaeed.com/images/author/Muhammad-Rehan-Saeed/Logo-512x512.png","inLanguage":"en-GB","url":"https://rehansaeed.com/images/author/Muhammad-Rehan-Saeed/Logo-512x512.png"}]}
```

## Sitemap

See the full [sitemap](https://rehansaeed.com/sitemap.md) for all pages.
