Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

New .NET Interface for In-Memory Database System Leverages C# Language's Reflection and Attributes

DZone's Guide to

New .NET Interface for In-Memory Database System Leverages C# Language's Reflection and Attributes

· Database Zone
Free Resource

Whether you work in SQL Server Management Studio or Visual Studio, Redgate tools integrate with your existing infrastructure, enabling you to align DevOps for your applications with DevOps for your SQL Server databases. Discover true Database DevOps, brought to you in partnership with Redgate.

McObject has released a C#/.NET Framework application programming interface (API) for its eXtremeDB In-Memory Database System (IMDS) and related product family. The new API streamlines Windows software creation by enabling developers to work naturally with eXtremeDB entirely within C#’s object-oriented domain, while delivering the speed and efficiency of a database runtime that executes in compiled C code.

When using the C# API for eXtremeDB, there is no external database definition, and no requirement to compile a database schema. Instead, the API relies on C#’s reflection capability to discover database classes and their fields that are defined in the application, in the class definition syntax. This streamlines coding, and the developer's experience is one of working with plain old C# objects. Optionally, the C# class definitions can be used to generate a schema that, in turn, can be processed by McObject’s schema compiler, so that C/C++ and C# programs can use the same database. The C# interface is a port of a Java Native Interface (JNI) that was earlier released for eXtremeDB and described in detail on DZone JavaLobby in an article titled Java Annotations and Reflection: Powerful Building Blocks for a DBMS Interface.

For C# developers, eXtremeDB’s performance advantage stems from its streamlined architecture that manages data entirely in main memory and within the application’s address space, eliminating file I/O, cache management, inter-process communication and other overhead found in database systems that incorporate disk storage and/or a client-server architecture. The resulting minimal latency has driven eXtremeDB’s adoption in performance-intensive applications ranging from telecom call routing and combat jet avionics, to securities trading platforms and social network news feeds.

 

The reflection capability in C# is used to discover database classes and their fields that are defined in the application, via class definition syntax.

 

 

With the eXtremeDB C# API, C# class definitions use attributes (defined by brackets) to indicate a database characteristic.

It’s easier than you think to extend DevOps practices to SQL Server with Redgate tools. Discover how to introduce true Database DevOps, brought to you in partnership with Redgate

Topics:

Opinions expressed by DZone contributors are their own.

THE DZONE NEWSLETTER

Dev Resources & Solutions Straight to Your Inbox

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

X

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}