---
title: "Blog - Page 9 - Muhammad Rehan Saeed"
description: "Page 9 of blog posts authored by Muhammad Rehan Saeed."
canonical_url: "https://rehansaeed.com/9/"
meta:
  author: "Muhammad Rehan Saeed"
  "og:description": "Page 9 of blog posts authored by Muhammad Rehan Saeed."
  "og:image": "https://rehansaeed.com/_og/s/o_24c8ab363aee7398.png"
  "og:image:alt": "Blog - Page 9 - Muhammad Rehan Saeed"
  "og:image:height": "630"
  "og:image:type": image/png
  "og:image:width": "1200"
  "og:title": "Blog - Page 9"
  "twitter:image": "https://rehansaeed.com/_og/s/o_24c8ab363aee7398.png"
  "twitter:image:alt": "Blog - Page 9 - 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)

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

## [Internet Favicon Madness (Updated)](https://rehansaeed.com/internet-favicon-madness/)

Add favicon's to your website to support iOS, Android, Windows 7, Windows 8, Windows Phone and more. Find out where icons are used on each platform and how.

Posted 24 November 2014 - **17 min read**

[.NET](https://rehansaeed.com/tag/net/) [Android](https://rehansaeed.com/tag/android/) [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/) [Favicon](https://rehansaeed.com/tag/favicon/) [HTML 5](https://rehansaeed.com/tag/html-5/) [iOS](https://rehansaeed.com/tag/i-os/) [Meta Tags](https://rehansaeed.com/tag/meta-tags/) [Windows 8.1](https://rehansaeed.com/tag/windows-8-1/)

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

## [ASP.NET Core Boilerplate](https://rehansaeed.com/asp-net-mvc-boilerplate/)

ASP.NET Core Boilerplate is a professional ASP.NET MVC template for building secure, fast, robust and adaptable web applications or sites.

Posted 12 November 2014 - **7 min read**

[.NET](https://rehansaeed.com/tag/net/) [ASP.NET MVC](https://rehansaeed.com/tag/asp-net-mvc/) [ASP.NET Core Boilerplate](https://rehansaeed.com/tag/asp-net-core-boilerplate/) [Autofac](https://rehansaeed.com/tag/autofac/) [Bootstrap](https://rehansaeed.com/tag/bootstrap/) [C#](https://rehansaeed.com/tag/c/) [Content Security Policy (CSP)](https://rehansaeed.com/tag/content-security-policy-csp/) [Elmah](https://rehansaeed.com/tag/elmah/) [Font Awesome](https://rehansaeed.com/tag/font-awesome/) [GitHub](https://rehansaeed.com/tag/git-hub/)

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

## [Elysium Extra 1.1 Released](https://rehansaeed.com/elysium-extra-1-1-released/)

Elysium Extra Version 1.1 is a Windows Presentation Foundation (WPF) SDK providing Metro styles for built in WPF controls and some custom controls.

Posted 5 November 2014 - **4 min read**

[.NET](https://rehansaeed.com/tag/net/) [C#](https://rehansaeed.com/tag/c/) [Elysium](https://rehansaeed.com/tag/elysium/) [Elysium Extra](https://rehansaeed.com/tag/elysium-extra/) [Metro](https://rehansaeed.com/tag/metro/) [Modern](https://rehansaeed.com/tag/modern/) [UI](https://rehansaeed.com/tag/ui/) [User Interface](https://rehansaeed.com/tag/user-interface/) [Windows Presentation Foundation](https://rehansaeed.com/tag/windows-presentation-foundation/) [WPF](https://rehansaeed.com/tag/wpf/)

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

## [Model-View-ViewModel (MVVM) - Part 4 - INotifyDataErrorInfo](https://rehansaeed.com/model-view-viewmodel-mvvm-part4-inotifydataerrorinfo/)

An base class implementation for the INotifyDataErrorInfo interface. Used in the Model-View-ViewModel (MVVM) pattern. Targeted for best performance.

Posted 9 September 2014 - **12 min read**

[.NET](https://rehansaeed.com/tag/net/) [Base Class Library](https://rehansaeed.com/tag/base-class-library/) [BCL](https://rehansaeed.com/tag/bcl/) [C#](https://rehansaeed.com/tag/c/) [Elysium Extra](https://rehansaeed.com/tag/elysium-extra/) [Events](https://rehansaeed.com/tag/events/) [Explicit Interface Implementation](https://rehansaeed.com/tag/explicit-interface-implementation/) [INotifyDataErrorInfo](https://rehansaeed.com/tag/i-notify-data-error-info/) [INotifyPropertyChanged](https://rehansaeed.com/tag/i-notify-property-changed/) [Model-View-ViewModel (MVVM)](https://rehansaeed.com/tag/model-view-view-model-mvvm/)

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

## [Naming Conventions](https://rehansaeed.com/naming-conventions/)

Code is written to be read by humans, not machines. Naming conventions and standard code styling can boost productivity, particularly if working in teams.

Posted 4 September 2014 - **3 min read**

[C#](https://rehansaeed.com/tag/c/) [Naming Convention](https://rehansaeed.com/tag/naming-convention/) [SQL](https://rehansaeed.com/tag/sql/) [Standards](https://rehansaeed.com/tag/standards/) [StyleCop](https://rehansaeed.com/tag/style-cop/) [T-SQL](https://rehansaeed.com/tag/t-sql/)

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

## [Model-View-ViewModel (MVVM) - Part 3 - INotifyPropertyChanged](https://rehansaeed.com/model-view-viewmodel-mvvm-part3-inotifypropertychanged/)

An base class implementation for the INotifyPropertyChanged interface. Used in the Model-View-ViewModel (MVVM) pattern. Targeted for best performance.

Posted 18 June 2014 - **11 min read**

[.NET](https://rehansaeed.com/tag/net/) [Base Class Library](https://rehansaeed.com/tag/base-class-library/) [BCL](https://rehansaeed.com/tag/bcl/) [C#](https://rehansaeed.com/tag/c/) [Design Patterns](https://rehansaeed.com/tag/design-patterns/) [Events](https://rehansaeed.com/tag/events/) [Explicit Interface Implementation](https://rehansaeed.com/tag/explicit-interface-implementation/) [INotifyPropertyChanged](https://rehansaeed.com/tag/i-notify-property-changed/) [INotifyPropertyChanging](https://rehansaeed.com/tag/i-notify-property-changing/) [Model-View-ViewModel (MVVM)](https://rehansaeed.com/tag/model-view-view-model-mvvm/)

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

## [Model-View-ViewModel (MVVM) - Part 2 - IDisposable](https://rehansaeed.com/model-view-viewmodel-mvvm-part2-idisposable/)

Implementing IDisposable correctly is ridiculously hard. A Disposable base class can make it easier. Using IDisposable in Model-View-ViewModel (MVVM) really helps.

Posted 13 June 2014 - **4 min read**

[.NET](https://rehansaeed.com/tag/net/) [Base Class Library](https://rehansaeed.com/tag/base-class-library/) [BCL](https://rehansaeed.com/tag/bcl/) [C#](https://rehansaeed.com/tag/c/) [Design Patterns](https://rehansaeed.com/tag/design-patterns/) [IDisposable](https://rehansaeed.com/tag/i-disposable/) [Model-View-ViewModel (MVVM)](https://rehansaeed.com/tag/model-view-view-model-mvvm/) [MVVM](https://rehansaeed.com/tag/mvvm/) [Reactive Extensions](https://rehansaeed.com/tag/reactive-extensions/) [Rx](https://rehansaeed.com/tag/rx/)

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

## [Model-View-ViewModel (MVVM) - Part 1 - Overview](https://rehansaeed.com/model-view-viewmodel-mvvm-part1-overview/)

What really goes into using Model-View-ViewModel (MVVM) in .NET. Base classes for INotifyPropertyChanged, INotifyDataErrorInfo, IDisposable and a lot more.

Posted 14 May 2014 - **5 min read**

[.NET](https://rehansaeed.com/tag/net/) [Base Class Library](https://rehansaeed.com/tag/base-class-library/) [BCL](https://rehansaeed.com/tag/bcl/) [C#](https://rehansaeed.com/tag/c/) [Design Patterns](https://rehansaeed.com/tag/design-patterns/) [IEditableObject](https://rehansaeed.com/tag/i-editable-object/) [INotifyDataErrorInfo](https://rehansaeed.com/tag/i-notify-data-error-info/) [INotifyPropertyChanged](https://rehansaeed.com/tag/i-notify-property-changed/) [Model-View-ViewModel (MVVM)](https://rehansaeed.com/tag/model-view-view-model-mvvm/) [MVVM](https://rehansaeed.com/tag/mvvm/)

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

## [Portable Class Library (PCL) version of NotificationsExtensions NuGet package](https://rehansaeed.com/portable-class-library-version-of-notificationsextensions-nuget-package/)

NotificationsExtensions.Portable is a Portable Class Library (PCL) used to Create Windows 8.1 or Windows Phone 8.1 Tile, Toast and Badge Notification XML.

Posted 6 May 2014 - **1 min read**

[.NET](https://rehansaeed.com/tag/net/) [C#](https://rehansaeed.com/tag/c/) [NotificationsExtensions](https://rehansaeed.com/tag/notifications-extensions/) [NuGet](https://rehansaeed.com/tag/nu-get/) [Portable Class Library (PCL)](https://rehansaeed.com/tag/portable-class-library-pcl/) [Windows 8.1](https://rehansaeed.com/tag/windows-8-1/) [Windows Phone](https://rehansaeed.com/tag/windows-phone/) [Windows Store](https://rehansaeed.com/tag/windows-store/) [WinRT](https://rehansaeed.com/tag/win-rt/)

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

## [Reactive Extensions (Rx) - Part 6 - Task ToObservable](https://rehansaeed.com/reactive-extensions-part6-task-toobservable/)

How and where to use the Reactive Extensions (Rx) ToObservable Extension method to turn a Task Parallel Library (TPL) Task into an IObservable.

Posted 25 April 2014 - **5 min read**

[.NET](https://rehansaeed.com/tag/net/) [C#](https://rehansaeed.com/tag/c/) [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/)

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

**Page 9 of 11**

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

```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/9/#webpage","description":"Page 9 of blog posts authored by Muhammad Rehan Saeed.","name":"Blog - Page 9","url":"https://rehansaeed.com/9/","@type":["WebPage","CollectionPage"],"breadcrumb":{"@id":"https://rehansaeed.com/9/#breadcrumb"},"isPartOf":{"@id":"https://rehansaeed.com/#website"},"potentialAction":[{"@type":"ReadAction","target":["https://rehansaeed.com/9/"]}]},{"@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/9/#/schema/item-list/1","@type":"ItemList","itemListElement":[{"@type":"ListItem","name":"Internet Favicon Madness (Updated)","url":"https://rehansaeed.com/internet-favicon-madness/","position":1},{"@type":"ListItem","name":"ASP.NET Core Boilerplate","url":"https://rehansaeed.com/asp-net-mvc-boilerplate/","position":2},{"@type":"ListItem","name":"Elysium Extra 1.1 Released","url":"https://rehansaeed.com/elysium-extra-1-1-released/","position":3},{"@type":"ListItem","name":"Model-View-ViewModel (MVVM) - Part 4 - INotifyDataErrorInfo","url":"https://rehansaeed.com/model-view-viewmodel-mvvm-part4-inotifydataerrorinfo/","position":4},{"@type":"ListItem","name":"Naming Conventions","url":"https://rehansaeed.com/naming-conventions/","position":5},{"@type":"ListItem","name":"Model-View-ViewModel (MVVM) - Part 3 - INotifyPropertyChanged","url":"https://rehansaeed.com/model-view-viewmodel-mvvm-part3-inotifypropertychanged/","position":6},{"@type":"ListItem","name":"Model-View-ViewModel (MVVM) - Part 2 - IDisposable","url":"https://rehansaeed.com/model-view-viewmodel-mvvm-part2-idisposable/","position":7},{"@type":"ListItem","name":"Model-View-ViewModel (MVVM) - Part 1 - Overview","url":"https://rehansaeed.com/model-view-viewmodel-mvvm-part1-overview/","position":8},{"@type":"ListItem","name":"Portable Class Library (PCL) version of NotificationsExtensions NuGet package","url":"https://rehansaeed.com/portable-class-library-version-of-notificationsextensions-nuget-package/","position":9},{"@type":"ListItem","name":"Reactive Extensions (Rx) - Part 6 - Task ToObservable","url":"https://rehansaeed.com/reactive-extensions-part6-task-toobservable/","position":10}]},{"@id":"https://rehansaeed.com/9/#breadcrumb","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","name":"Blog","item":"https://rehansaeed.com/","position":1},{"@type":"ListItem","name":"Page 9","item":"https://rehansaeed.com/9/","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.
