Getting started with SignalR

Follows on from previous post: Real-time SignalR and Angular 2 dashboard I had a couple of questions from someone who forked the project on GitHub and is using it as the basis for their own custom dashboard, which reminded me that there are a few key things I picked up on my learning journey that I should share. These are primarily focused around SignalR aspects. An instance of a SignalR hub is created for each request A single instance is not shared across all clients connected to that hub. [Read More]

Real-time SignalR and Angular 2 dashboard

tl;dr Check out my new SignalRDashboard GitHub repo Followup post: Getting started with SignalR For a while now, I’ve had that burning curiosity to do more than just the bit of hacking around with SignalR that I’d previously done. I wanted to actually start building something with it. If you’re not familiar with it, SignalR is a: …library for ASP.NET developers that makes developing real-time web functionality easy. It provides a simple way to have two-way communication between the client and server; the server can push updates/data to any connected client. [Read More]

.NET Project File Analyser

I’ve started knocking together a little app to automate the process of trawling through a folder structure and checking .NET project files (C# .csproj currently) to extract some info out of them. The DotNetProjectFileAnalyser repo is up on GitHub. I’ve been working against Visual Studio 2010 project files, but could well work for other versions assuming the project file structure is the same for the elements it currently looks at - I just haven’t tried as yet. [Read More]

Ordnance Survey Data Importer Coordinate Conversion Accuracy

Update 13 March 2013: Please see latest blog post (fix) on this here. Thanks to a comment on my original post around my project that imports Ordnance Survey CodePoint data into SQL Server, I was made aware of a potential issue with the (awesome) third party GeoCoordConversion DLL I use to convert the Eastings/Northings coordinates supplied in the Ordnance Survey data files, into Latitude/Longitude coordinates. The issue relates to an inaccuracy in the conversion process, specifically to do with integer divisions instead of double. [Read More]

Getting Started with Riak and .NET

Earlier in the year, I started playing around with MongoDB using .NET and wrote up a Getting Started guide. Now it’s Riak’s turn. Nutshell Riak is a distributed, schemaless, data-type agnostic key-value “NoSQL” database written primarily in Erlang. Check out the “What is Riak?” page on Basho’s wiki. Riak does not run on Windows so you’ll need to choose your supported OS of choice to install Riak on. Having used Ubuntu before for MongoDB, I went down that route so my notes here are oriented that way. [Read More]

Getting Started with MongoDB and .NET

Getting up and running with MongoDB using C# is a very simple process. It literally takes a couple of minutes, including the time to download MongoDB itself and the C# drivers - so if you fancy having a play around with it to see what it’s all about, there’s no barrier stopping you. Nutshell To quote MongoDB (from “humongous”) is a scalable, high-performance, open source, document-oriented database. Check out the MongoDB homepage for a highlight of the key features. [Read More]

Getting started with Cassandra and .NET

Over the past couple of days, I’ve started playing around with Cassandra in an effort to satisfy my curiosity and to see what it’s all about. In terms of databases, SQL Server is my main skill - I first started using it nearly 10 years ago, and will always remember the first book I read cover to cover on it: Inside Microsoft SQL Server 6.5 by Ron Soukup. So Cassandra is a step outside of my comfort zone; something new and a little alien to me…. [Read More]

SqlBulkCopy ColumnMappings Mismatch

“The given ColumnMapping does not match up with any column in the source or destination” This error caused me more head-scratching than it should have done today. I was using SqlBulkCopy to bulk insert some data into an SQL Server table from a .NET DataTable, something I’ve done before - it’s not rocket science. But I hit this error upon calling WriteToServer and it took me a while (longer than it should have done really! [Read More]

High performance bulk loading to SQL Server using SqlBulkCopy

If you ever want to bulk load data into an SQL Server database as quickly as possible, the SqlBulkCopy class is your friend (in the System.Data.SqlClient namespace). Since being introduced in .NET 2.0, it has provided an extremely efficient way to bulk load data into SQL Server, and is one the classes that I see as a “must know about”. A usual scenario is where you want to dump some data into the database to then do some processing on. [Read More]

Sorting a DataTable - LINQ performance

Whenever there are a number of ways to achieve the same goal, I’m always inquisitive as what the performance difference is between them. I’m a firm believer in thinking about scalability from the start - if you can make your best effort to prepare for scale, then you can save yourself time and effort further down the line. I like to try and avoid pain - it doesn’t agree with me. [Read More]