Project DescriptionTraditional way dealing data, with NoSQL fashion styles, full managed code, not only CURD and QL, but also Replication services, for both .NET and Windows Phone
iBoxDB can help you save and load Objects easily, your traditional experiences and skills still working on it. it is lightweight but full functional. Running as an embedded server like local database, also supports .Net Remoting act as part of distributed system. all operations under a context named "Box", it is transaction-based.
features
- CURD
- Primary key
- Index, both Unique and Non-Unique
- Composite Index, both Unique and Non-Unique
- Query language
- Transactions support
- Concurrency control
- Replication both MasterSlave and MasterMaster
- In-Memory database supported
- Automatically creating databases when it is needed
- Zero configuration, copy and run, full of managed code
- Dynamic columns
- Different types with same indexes can be stored in same table
- NoSQL styles
- ResultSet compatible with LINQ
- High performance
Benchmark with MongoDBExamples:
Normal Object
box.Insert("Member",
new Member() {
ID=box.NewId( Member.IncTableID,1) ,
LoginName = "Andy",
Password = Member.EncodePassowrd( "123" ),
Tags = new string[]{ "Nice" , "Strong" }
}
);
Dynamic Object (document database)
game["GameType"] = "ACT";
box.Insert("Product", game);
SQL like
// from TABLE where A>? & B<=? order by C limit 0,10
box.BSelect<Member>("from Member where LoginName==?", "MyName"));
Custom QueryFunction
box.BSelect<Member>("from Member where [Tags]", new QueryArray("Strong"));
Compatible with LINQ
from o in box.BSelect<Class>("from Class")
where o.Text.Contains(text)
select o;
Key-Value Style Query
box.Bind("Table", 2L).Select<AClass>();
//Composite Key
box.Bind("Table2", 99, "ABC").Select<BClass>();
Replication Master-Slave , Master-Master