C# driver quickstart

The C# driver does not support the Serverless (Vector) type. These instructions are for users connecting to a Serverless (Non-Vector) database.

Use the C# driver only if your application previously used a CQL-based driver or if you need to explicitly use CQL.

Review the Connection methods comparison page to determine the best option for your use case.

This quickstart provides an end-to-end workflow for how to install the driver, connect it to your database, and migrate an existing DataStax C# driver to a version that is capable of connecting to your Serverless (Non-Vector) database.

Prerequisites

You need the following items to complete this quickstart:

Connect the C# driver to your database

  1. Create a new C# project and configure it to connect to your Cassandra database.

    mkdir csharpproject
    cd csharpproject
    dotnet new console
  2. Add the dependencies for the C# driver to your project. Latest Nuget.

    dotnet add package CassandraCSharpDriver -v <version>
  3. Replace the code in Program.cs with the following code to connect to your Serverless (Non-Vector) database.

    Include the absolute path to the secure connect bundle for your Serverless (Non-Vector) database (secure-connect-database_name.zip) in the WithCloudSecureConnectionBundle method call, and your credentials in the WithCredentials method call, as shown in the following examples.

    using System;
    using System.Linq;
    using Cassandra;
    
    namespace csharpproject
    {
        class Program
        {
            static void Main(string[] args)
            {
                var session =
                    Cluster.Builder()
                           .WithCloudSecureConnectionBundle(@"/SECURE_CONNECT_BUNDLE_PATH/secure-connect-DATABASE_NAME.zip")
                           .WithCredentials("clientId", "clientSecret")
                           .Build()
                           .Connect();
            }
        }
    }
  4. After the connection code, add the following code to the Main method in Program.cs. This code runs a CQL query and prints the output to the console.

    var rowSet = session.Execute("select * from system.local");
    Console.WriteLine(rowSet.First().GetValue<string>("cluster_name"));
  5. Run your C# project with the dotnet runtime.

    dotnet restore
    dotnet build
    dotnet run --no-build

Migrate the C# driver

Complete the following procedure to migrate your existing DataStax C# driver to a version that is capable of connecting to your Serverless (Non-Vector) database.

  1. Add the dependencies for the C# driver to your project. Latest Nuget.

    dotnet add package CassandraCSharpDriver -v <version>
  2. In your existing DataStax C# driver code, modify the connection code to use the Serverless (Non-Vector) API.

    Include the absolute path to the secure connect bundle for your Cassandra database (secure-connect-database_name.zip) in the WithCloudSecureConnectionBundle method call, and your credentials in the WithCredentials method call, as shown in the following examples.

    var session =
      Cluster.Builder()
          .WithCloudSecureConnectionBundle(@"/SECURE_CONNECT_BUNDLE_PATH/secure-connect-DATABASE_NAME.zip")
            .WithCredentials("clientId", "clientSecret")
            .Build()
            .Connect();
  3. Run your application.

Was this helpful?

Give Feedback

How can we improve the documentation?

© 2024 DataStax | Privacy policy | Terms of use

Apache, Apache Cassandra, Cassandra, Apache Tomcat, Tomcat, Apache Lucene, Apache Solr, Apache Hadoop, Hadoop, Apache Pulsar, Pulsar, Apache Spark, Spark, Apache TinkerPop, TinkerPop, Apache Kafka and Kafka are either registered trademarks or trademarks of the Apache Software Foundation or its subsidiaries in Canada, the United States and/or other countries. Kubernetes is the registered trademark of the Linux Foundation.

General Inquiries: +1 (650) 389-6000, info@datastax.com