# BCL

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).

Link

Logging with Serilog.Exceptions

Log exception details and custom properties that are not output in Exception.ToString() using Serilog.Exceptions for .NET.

Link

Model-View-ViewModel (MVVM) - Part 4 - INotifyDataErrorInfo

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

Link

Model-View-ViewModel (MVVM) - Part 3 - INotifyPropertyChanged

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

Link

Model-View-ViewModel (MVVM) - Part 2 - IDisposable

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

Link

Model-View-ViewModel (MVVM) - Part 1 - Overview

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

Link

GetHashCode Made Easy

Implementing GetHashCode is hard work and little understood. Learn how to implement GetHashCode as quickly and as simply as possible.

Link