Skip to content
  1. We help small teams achieve big things.
  2. Our Technical Fellow just became a Microsoft MVP!
  3. We run the Azure Weekly newsletter.
  4. We just won 2 awards.
  5. We just published Programming C# 8.0 book.
  6. We run the Power BI Weekly newsletter.
  7. Our NDC London 2020 talk is now available online!
  8. We are school STEM ambassadors.
Jess Panni By Jess Panni Principal I
Azure Synapse for C# Developers: 5 things you need to know

One of the biggest challenges of digital transformation is the ability for organizations to adopt emerging technology. It could be the best platform in the world but if you need to down tools for 6 months to get up to speed with new languages then you could be dead in the water before you even start.

So I wouldn't blame you if you are sat there listening to all the Azure Synapse hype and thinking, "yeah, maybe another day...".

But while I have you, let me quickly highlight some .NET/C# goodies in Azure Synapse Analytics that you might not know about.

  1. SQL + .NET - If you're a C# dev then the chances are you have written an application that talks to a SQL Server database. I expect you've written new SqlConnection(connectionString) more times than you can remember. This is good, because that's exactly what you need to do to start integrating Synapse into your .NET applications. This applies to provisioned SQL Pools and also the new on-demand SQL capabilities.
  2. SQL + SSMS - If you've done anything with SQL Server you have probably found yourself in SQL Server Management Studio (SSMS). Did you know you can connect SSMS directly to Synapse and start querying the contents of your data lake as easily as you can query any SQL Server? In fact, you can use any client that can talk to SQL Server to talk to Synapse. Tip: try out SQL notebooks in Azure Data Studio. Fingers crossed a pure SQL kernel will come to Synapse notebooks soon.
  3. .NET + Spark - If you want to perform more complex processing such as training ML models over petabytes of data then you are likely to need Spark. Synapse comes pre-initialized with .NET for Apache Spark which means you can do this with 100% .NET code - no need to learn Python or Scala. You simply write your .NET Spark applications in VS Code or Visual Studio and have them run as jobs in Synapse. To get started, checkout these batch processing, structured streaming and ML sentiment analysis examples.
  4. .NET (C#) + Notebooks - Synapse notebooks comes pre-installed with a .NET kernel courtesy of .NET Interactive which along with .NET for Spark means you can explore and document your experiments all from within Synapse Studio. I'm a huge fan of notebooks so definitely give this a try. We've recently conducted a series of Synapse SQL Serverless benchmarks all conducted via .NET notebooks, I'll share the results of these in a separate post.
  5. Cosmos DB + Synapse - If you are using Cosmos DB, you can enable Synapse Link and start querying your application data using any of the options I've already mentioned. And while you are at it, why not join your Cosmos DB data over files in your data lake or with data from any other Synapse Link enabled Cosmos DB account!

It's never been a better time to be a .NET developer.

Want to get started with Synapse but not sure where to start?

I thoroughly recommend that you checkout Microsoft's Azure Synapse Analytics: How It Works virtual event. You will learn about all about Azure Synapse through technical demos and customer stories. I'll be there showing how we've been using SQL Serverless to solve a really interesting IoT problem.

Endjin's Azure Synapse Analytics Jumpstart is everything you need to kick-start and de-risk your analytics programme. If you want to know more you can book a call or email us at hello@endjin.com.

Jess Panni

Principal I

Jess Panni

Jess has over 25 years' experience helping companies succeed through the smart use of technology. He has spent most of his career working for leading Microsoft partners across the UK and Australia and is now Principal at endjin, working with clients to envision and execute disciplined innovation programmes.