Writing to CSV-file from multiple threads

I was writing document and metadata exporter that reads data from SharePoint and writes it to multiple files. I needed to boost up performance of my exporter and I went with multiple threads pumping out the data from SharePoint. One problem I faced – writing metadata to CSV-files from multiple threads in parallel. This blog post shows how to do it using concurrent queue.

Read more

What’s new in next version of Microsoft Edge

Next version of Microsoft Edge browser is replacing its current rendering engine and in future it will run on Chromium – the same rendering engine used by Google Chrome browser. Edge gets total rework and ends one era in Microsoft history on browsers field. With new browser there will come interesting new features. Here is overview of insiders release of next Microsoft Edge.

Read more

Using custom appsettings.json with ASP.NET Core integration tests

ASP.NET Core introduced the concept of TestServer for integration testing of web applications. Integration tests need web application run with all bells and whistles to make sure that all components work together with no flaws. Often we need special settings for integration tests as web application cannot use live services and easiest way to do it is to use special appsettings.json file. This blog post shows how to do it.

Read more

Connecting Samsung Smart TV to speakers

Few months ago I bought new Samsung smart TV with 43” UHD screen. It’s for small room. Big was my surprise if I found out that it’s not so easy to connect this very smart device to regular speakers as there’s no analog audio output. After visit to local electronics and audio shop my problem got solved. Here’s how to make Samsung Smart TV works with external speakers.

Read more

Entity Framework Core supports constructors with arguments

Keeping objects complete and valid all the time is strategy used in different methodics. It’s perhaps most popular in Domain Driven Design (DDD). Entity Framework Core 2.1 made big step forward on supporting entities that doesn’t have default empty constructor. This blog post shows how to use Entity Framework Core and entities with constructor arguments.

Read more

Optimized hierarchy traverser

My first draft of hierarchy traversing component got some serious feedback and it’s time to make some changes before moving on to next challenges. Hierarchy traverser is not optimal yet as it uses tail-call recursion and it’s easy to run to stack overflow with it. This blog post solves this problem and prepares for next challenges like node cache and continue-from-given-node.

Read more

Universal hierarchy traversing in C#

I started playing with small idea about how to go through document repository on SharePoint using more universal approach than just piling code to using-blocks and methods that depend on these. My goal was to separate in code hierarchy traversing logic from document exporting logic so I can use traversing part also in other projects on different types of hirarchies. Here is my nice and clean solution.

Read more