Data platform

Performance of compiled queries in Entity Framework Core 2.0

Before applying any optimizations to our code we have to ask one question: what is the cost of improvement and is it really improvement? Compiled queries in Entity Framework 2.0 are categorized as high-availability feature but before making any decisions we need to know what is the actual win. This blog post introduces the measurements I made with simple database context to compare compiled and uncompiled queries in Entity Framework Core 2.0.

Compiled queries in Entity Framework Core

Entity Framework Core 2.0 introduces explicitly compiled queries. These are LINQ queries that are compiled in advance to be ready for execution as soon as application asks for data. This blog post demonstrates how compiled queries work and how to use them.

Defensive database context for multi-tenant ASP.NET Core applications

In multi-tenant applications where tenants share same data store cross-tenant operations must be avoided. There are many ways how bugs like this can happen. Be it hard to debug threading issue or some other complex situation, it is better when application components are ready for this kind of situations and better fail instead of going to glory end with illegal operations. This blog post introduces defensive database context that throws exception when data from other tenants is about to be updated.

Unit testing multi-tenant database provider

My saga on supporting multiple tenants in ASP.NET Core web applications has come to point where tenants can use separate databases. It’s time now to write some tests for data context to make sure it behaves correct in unexpected situations. This post covers unit tests for data context and multi-tenancy.

Implementing database per tenant strategy on ASP.NET Core

Let’s continue with multi-tenancy in ASP.NET Core web applications and focus on solutions where every tenant has its own database. It’s not only about database – there can be more services where every tenant has its own instance. It makes solution provided here easily extendable to also other services besides SQL Server or any other relational database.

Implementing tenant providers on ASP.NET Core

In my previous post about global query filters in Entity Framework 2.0 I proposed an idea how to automatically apply filters to all entities so they are always coming from same tenant. This post digs deeper to possible solutions for detecting current tenant in ASP.NET Core we applications.

Global query filters in Entity Framework Core 2.0

Entity Framework Core 2.0 introduces global query filters that can be applied to entities when model is created. It makes it easier to build multi-tenant applications and support soft deleting of entities. This blog post gives deeper overview about how to use global query filters in real-life applications and how to apply global query filters […]

Like-operator in Entity Framework Core 2.0

Entity Framework Core 2.0 was announces yesterday and it brings some new and cool features. One of them is SQL Like-operator we can use now using directly in our code. Here is the example of using new Like-operator.

.NET Core, ASP.NET Core, EF Core and .NET Standard 2.0 announced

Today Microsoft announced versions 2.0 of .NET Standard, .NET Core, ASP.NET Core and Entity Framework Core. Also new updated to Visual Studio 2017 are available (both stable and preview version). This blog post is summary of most important features announced today.

Simple solution for metrics targets on MSSQL

I needed flexible solution to keep measurements with target values in SQL Server database. After some playing with tables and functions I came out with simple, clean and flexible solution that fits also well for many other scenarios besides the one I had to support. This blog post summarizes my work and provides all SQL stuff needed to reproduce it.

MSSQL: Finding weekend days in month

One of my applications displays tables with some calculations about users working time. This is for corporate reporting. For this table I needed a way to find how many weekends days are in given month. As most of calculation work is done in SQL Server stored procedure I decided to keep stuff there and found a way how to get weekend days with common table expression.

Creating simple shoutbox using ASP.NET Core Razor Pages

ASP.NET Core 2 comes with Razor Pages that allow developers to build simple web applications with less overhead compared to MVC. The emphazise is on the word “simple” as Razor Pages doesn’t come with patterns suitable for bigger and more complex applications. For this we have MVC that is flexible enough to build applications that will grow over years. This blog post uses simple shoutbox application to illustrate how to build applications using Razor Pages.

What is Micro ORM?

Micro ORM-s are useful small ORM-s that are lightweight and map between objects and database queries. This blog post discusses when to use Micro ORM-s and provides example code where Micro ORM called Dapper is used.

ASP.NET Core: SQL Server based distributed cache

ASP.NET Core supports also distributed cache solutions. Out-of-box there is support for SQL Server and Redis based distributed caches. This blog post focuses to SQL Server based cache we can use when there are really no better options.

Paging with Entity Framework Core

Paging query results is timeless topic and some days ago I got question about how to do it with Entity Framework Core. Using my previous work on paging I wrote some simple extension methods that work with IEnumerable and IQueryable interfaces. There’s also method that maps entities to models.

TemperatureStation: My Windows 10 IoT Core solution on Github

I published to Github sample temperature measuring solution that runs on Windows 10 IoT Core and that is built on Visual Studio. Source code with basic documentation is available too. This demo project is there to give some starting point to those who are visiting my Brewing Eisbock with Raspberry PI and Windows 10 IoT sessions in different conferences.

Making Entity Framework 7 and Azure Data Sync work together

I have local database where I insert some data and I want this data to be available also in cloud. As a lazy guy I don’t want to synchronize data manually. After setting up local and cloud databases I activated Azure Data Sync to just find out that it conflicts with EF7 insert and update queries. As I don’t have many tables and my database is pretty small I invented simple workaround.

Beer IoT: Visualizing sensors data using Power BI

We are eager to try out our beer cooling solution and we want to see it in action. We want to visualize our data and keep eye on temperature of cooling beer. Before doing anything more complex like building web or mobile app we make a quick shortcut and bring our data to web, desktop and mobile. This post is about Power BI in action.

Beer IoT: Using Stream Analytics to save data from IoT Hub to SQL database

When cooling beer we want to store history of temperatures for two reasons. First, it gives us valuable history data for next cooling sessions. As a second thing we can ask measurements when we temporarily lost connection with IoT Hub. In this posting we make some analyzis and then build up database for our beer cooling solution.

How to avoid throttling SQL Azure database with NHibernate

Lately I had one weird experience on with running NHibernate on Windows Azure and I think it’s worth to share with you. NHibernate is matured industry-level ORM that is proven itself over years. Although it is not so easy to use as Entity Framework it is still my favorite due to flexibility and wide databases […]

Previous Posts