Let me tell you a story about an adventure. An adventure that has kept me busy for the past two weeks and fortunately cumulated in a happy ending. It’s the story of the biggest and longest bug hunt of my career. It all started around May 20th, when our support department reported that customers were having trouble loading our dashboard. The issue occurred very rarely and was limited to individual users. Refreshing the page didn’t help. However, when the support team tried to...
Using System.Text.Json alongside Newtonsoft Json.Net
In June 2019, Microsoft introduced System.Text.Json as a feature of .NET (core) 3.0 to the public. The reason they gave for creating this new namespace was that they were unhappy with the old built-in solution for serializing / deserializing JSON. The poor built-in capabilities to work with JSONs –of course- was the reason for James Newton-King to create Json.Net (for many of us just called Newtonsoft, which actually is his company and not the name of the library). Newtonsoft’s Json.Net...
NgForm with nested validation
Creating a lazy-loading wrapper component in Angular
A couple of weeks ago, one of my colleagues was tasked with implementing multiple customizable reports for our software. So, he did some research and found ActiveReportsJS by Grapecity. It allows us to create templates for reports, which could then be edited by our users to fully customize the appearance of those reports. Not only that, but it allows for PDF previewing on the one hand and headless exporting the PDFs on the other. To my surprise, the PDF rendering takes place in the...
Rename a database in RavenDB
This is just a quick post which explains how you can rename an existing database in RavenDB. Actually you can’t. What you can apply is the following procedure: Create a new destination database in RavenDB with the new desired name Export the source database into a RavenDB dump Import the dump into the destination database This operation is an offline operation. You could also use the replication bundle to replicate information from one database into the other on the same server but this...
The particular service platform – Deploying to endpoints and subscribing for events
In my last post I showed how to create a service and a publisher. In this blogpost I will show how to subscribe to messages and how to deploy components to endpoints. In my blogposts about CompositeUI for Service Oriented Systems I called about services or “things”. I don’t cover that theory here. I encourage you to read those blogposts. Before we can deploy the undeployed component WarehouseRaid we need to create a hosting component for that. This can be done by clicking on...
The particular service platform – Service and event publisher
In my last post I gave an overview about the problem domain we are going to tackle with ServiceMatrix called R.I.P.D. In this blogpost I want to build that crazy sample from the ground up. So let’s do it! In my blogposts about CompositeUI for Service Oriented Systems I called about services or “things”. I don’t cover that theory here. I encourage you to read those blogposts. On the canvas of ServiceMatrix we can first create a new service and give it a proper name...
The particular service platform – ServiceMatrix sample and introduction
In my last post I talked about the particular service platform and how close it is being released. This time I can happily say that it has been released! The particular team did its magic and pushed the whole platform out. You already got a sneak peak at the installation process. This time I will cover ServiceMatrix and show you how easy it is to build a distributed system based on NServiceBus with ServiceMatrix. The sample I will use throughout the blog posts is based on the Hollywood movie...
The particular service platform introduction
You have already heard me talking or at least read a blog post about NServiceBus from me 😉 The next big release from particular software is just around the corner! This time it is not just another version of NServiceBus. No, it is a whole platform or toolset you can use to build up complex distributed systems based on NServiceBus. I give you a brief overview over the platform and then dive into ServiceMatrix. Let’s get started!
Transport, Transport, … MSMQ, RabbitMQ, ActiveMQ with NServiceBus
This is the handout for the presentation I gave at the Basta Conference in Darmstadt. The talk is about different transports available for NServiceBus. Building distributed systems with NServiceBus which only use MSMQ was yesterday. Today we have more possibilities to choose the right transport technology. But how do I decide which transport layer fulfills my functional and non-functional requirements? What is the difference between MSMQ and RabbitMQ? How does a broker based transport...