Author Archives

Archive of the posts written by author : afish.

Logging in distributed system Part 3 — Exceptions

This is the third part of the Logging series. For your convenience you can find other parts in the table of contents in Part 1 – Correlations So we need to handle errors and exceptions. Web jobs are already covered in the previous…

Logging in distributed system Part 2 — Action filters

This is the second part of the Logging series. For your convenience you can find other parts in the table of contents in Part 1 – Correlations We have our loggers and correlators, now we need to use them. Since we want to…

Logging in distributed system Part 1 — Correlations

This is the first part of the Logging in distributed system series. For your convenience you can find other parts using the links below (or by guessing the address): Part 1 — Correlations Part 2 — Action filters Part 3 — Exceptions Part…

.NET Inside Out Part 6 — Proxy handling casting in C#

This is the sixth part of the .NET Inside Out series. For your convenience you can find other parts in the table of contents in Part 1 – Virtual and non-virtual calls in C# Let’s start with the following code: public interface IHaveASandwich…

Executing SQL query inside Excel spreadsheet

Did you know that you can execute almost any SQL query directly in your Excel spreadsheet? This can be very useful for executing queries with GROUP BY and aggregates since they cannot be generated that easily. Let’s begin. I will use Excel 2013…

ILP Part 47 — Battleship puzzle

This is the forty seventh part of the ILP series. For your convenience you can find other parts in the table of contents in Part 1 – Boolean algebra Today we are going to solve Battleship puzzle. It is very similar to nonograms…

Sitefinity Part 4 — Turning on Redis in Sitefinity in Azure

This is the fourth part of the Sitefinity series. For your convenience you can find other parts in the table of contents in Sitefinity Part 1 — Capturing logs Last time we saw how to change database connection string for Sitefinity which can…

Sitefinity Part 3 — Dynamically changing database connection string in Sitefinity

This is the third part of the Sitefinity series. For your convenience you can find other parts in the table of contents in Sitefinity Part 1 — Capturing logs Sitefinity stores its database connection string in App_data\Sitefinity\Configuration\DataConfig.config so you can easily modify connection…

Sitefinity Part 2 — Dependency injection in Sitefinity

This is the second part of the Sitefinity series. For your convenience you can find other parts in the table of contents in Sitefinity Part 1 — Capturing logs In order to use DI in Sitefinity you need to configure two mechanisms. One…

Sitefinity Part 1 — Capturing Sitefinity logs and pushing them to Azure Storage

This is the first part of the Sitefinity series. For your convenience you can find other parts using the links below (or by guessing the address): Part 1 — Capturing logs Part 2 — Dependency Injection Part 3 — Changing connection string Part…

SQLxD Part 23 — Query parser tests

This is the twenty third part of the SQLxD series. For your convenience you can find other parts in the table of contents in Part 1 – XML Transformation Here go the tests for query parser: using System; using FluentAssertions; using Model; using…

SQLxD Part 22 — Query parser

This is the twenty second part of the SQLxD series. For your convenience you can find other parts in the table of contents in Part 1 – XML Transformation For parsing queries we use IronPython. Let’s begin with C# code for executing PLY…

SQLxD Part 21 — SELECT

This is the twenty first part of the SQLxD series. For your convenience you can find other parts in the table of contents in Part 1 – XML Transformation We have all things to transform rows and columns. Now it is time to…

SQLxD Part 20 — Transformers

This is the twentieth part of the SQLxD series. For your convenience you can find other parts in the table of contents in Part 1 – XML Transformation We can extract nodes, transform them into rows, filter, join, group, order, and transform them.…

SQLxD Part 19 — Expressions tests

This is the nineteenth part of the SQLxD series. For your convenience you can find other parts in the table of contents in Part 1 – XML Transformation Last time we implemented expressions, it is high time to test them: using Model; using…

SQLxD Part 18 — Expressions

This is the eighteenth part of the SQLxD series. For your convenience you can find other parts in the table of contents in Part 1 – XML Transformation Last time we saw tests for aggregates. Today we are going to implement expressions. We…

SQLxD Part 17 — Tests for aggregates

This is the seventeenth part of the SQLxD series. For your convenience you can find other parts in the table of contents in Part 1 – XML Transformation Last time we implemented aggregates, today we test them. Here are the snippets: using Model;…

SQLxD Part 16 — Aggregates

This is the sixteenth part of the SQLxD series. For your convenience you can find other parts in the table of contents in Part 1 – XML Transformation Today we implement various aggregates. Let’s start with the interface: using Model; namespace QueryLogic.Aggregates {…

SQLxD Part 15 — Ordering

This is the fifteenth part of the SQLxD series. For your convenience you can find other parts in the table of contents in Part 1 – XML Transformation Last time we implemented grouping, today we focus on ordering. These two operations are very…

SQLxD Part 14 — Grouping

This is the fourteenth part of the SQLxD series. For your convenience you can find other parts in the table of contents in Part 1 – XML Transformation Today we implement grouping. Since we can group in multiple ways, we need to have…