In focus

Introduction To SisoDB

In this article you will learn about the basics of SisoDB. SisoDb is a schema-less document-oriented provider for SQL Server.

Gagan Sharma Mar 21, 2016

SisoDb is a schema-less document-oriented provider for SQL Server. It is considered as a document-oriented database provider that is designed for SQL server which is written in C# language. In this the user can store object graphs of POCOs (plain old clr-object) it means that the object can be stored without any interface. 


By the use of SisoDb we can store and retrieve complete POCO-graphs without specifying the following things:
  • any mappings
  • extending any interfaces
  • extending any base-classes
SisoDb is used to store, retrieve, and manage document-oriented, or semi structured data. In SisoDb each entity is look upon as a corporate root and independent tables created on the fly. So It is called the schema less document-oriented provider. SisoDb package contains serializer which uses service stack text and this is the fastest JSON serializer in .NET.

If you want to Install SisoDb latest version that is v16.2.1, it is simple structured oriented Db which run in the Package Manager Console in SQL server as given below:

PM> Install-Package SisoDb.Sql2012

The following are the providers supported by SisoDb
  • Azure
  • SQL Server 2005
  • SQL Server 2008
  • SQL Server 2012
  • SqlCE4
The concepts of SisoDb are very simple to understand. You can design a pure POCO (plain old clr-object) without any need for interfaces or base classes.

Below given is a structure as a document in a document-oriented database, the same as MongoDb.

  1. public class Customers  
  2. {  
  3. public Guid Customer_Id { get; set; }  
  4. public int Customer_No { get; set; }  
  5. public string Name { get; set; }  
  6. }  
Insert data in SisoDb, follow below example:
  1. var customer = new Customer  
  2. {  
  3. CustomerNo = 414,  
  4. Firstname = "Ajay",  
  5. Lastname = "Kumar"  
  6. };  
  7. db.UseOnceTo().Insert(customer);  
Query example
  1. var customer = db.UseOnceTo().Query<Customer>().Where(c => c.CustomerNo == 414).SingleOrDefault();  
SisoDb Dashboard example


database json