We are pleased to present you a new plug-in for configuring а connection to Cassandra, which is available for FastReport .NET, FastReport Core, FastReport CoreWin, FastReport OpenSource. Let’s note an important detail that the order of the records will be overset because of the CassandraCsDriver library used by this connection.
Cassandra — is а NoSQL distributed database system, which аllows to create highly scalable and reliable storages of huge data arrays in the form of a hash.
To use it, you must first build the project:
С:\Program Files (x86)\FastReports\FastReport.Net\Extras\Core\FastReport.Data\FastReport.Data.Cassandra
After building the project, you will need to add the plugin to the application in one of two ways:
1. Add plugin via designer:
2. Add the plugin as a dependency when starting the project and register it in the code with the following command:
FastReport.Utils.RegisteredObjects.AddConnection(typeof(CassandraDataConnection));
To create a connection to Cassandra, you need to click on the "Data" tab in the designer, and select the "Add Data Source" item. Click on the "New Connection" in the resulting window. Specify the database address(es), key space, port, username, and password.
If there are no problems with access to the database, then a list of tables will appear after clicking the "Next" button. When connecting a table, you must check the box to the left of the table name. It will be possible to complete the connection only after that.
Upon connecting the data source, you need to bind a band to it.
The final report will use data from the created connection to Cassandra.
An example of connecting to Cassandra from code:
// Create an object CassandraDataConnection var connection = new CassandraDataConnection(); // Create an object CassandraConnectionStringBuilder CassandraConnectionStringBuilder stringBuilder = new CassandraConnectionStringBuilder(); // Configure аn object CassandraConnectionStringBuilder stringBuilder.ContactPoints = new string[] { "localhost" }; stringBuilder.DefaultKeyspace = "uprofile1"; // Set the connection string connection.ConnectionString = stringBuilder.ToString(); // Initialize all tables connection.CreateAllTables(); // Set the connection name connection.Name = "NewConnection"; //Creаte аn object Report var report = new Report(); // Add a connection to the report report.Dictionary.Connections.Add(connection); // Enаble connection display connection.Enabled = true; // Select a table and connect it to the report foreach (TableDataSource table in connection.Tables) { table.Enabled = true; }
After executing this code, we can see in the designer a new connection with the "user1" table in the list of available connections.
As you can see, it is now possible to create a connection to Cassandra and use the data stored there.