With the demise of VistaDB (vistadb.net), I am on the look out for a good embedded database to use for my C# programming.
Does anyone have any suggestions for something to use that it is simple to install along with my application? VistaDB was simple because I only had to copy 1 DLL file along with my app to get it to work.
I am looking for something like that but with good documentation/samples for C#.
If you think XML might fit the bill, my company just released an open source embedded XML database for the .NET platform called Nxdb. It's under the Apache 2.0 license and has been in development and use internally for several years. It's basically a binding to a cross-compiled (using IKVM) version of BaseX (a fantastic Java XML database) along with extra functionality for the embedded use case and the .NET environment. The project page is here: https://dracorp.assembla.com/spaces/nxdb
Deployment is fairly simple, though it does require a number of assemblies due to the way IKVM is linked and deployed (I think 10 or so at last count). The documentation is somewhat sparse, though there are some examples in the Wiki. We're working on adding more examples and better documentation right now (and are open to suggestions).
(Hopefully linking to my own project doesn't irk the mods, but I figured since this post directly answers the question and provides a link to a permissive OS project it would be okay).
Check Valentina Database. It has local royalty free engine and Valentina Server. You can use any or both of these via "Valentina NET" ADK. I should say this is fastest database I have see ever (it is columar). This is SQL and in the same time NON-SQL DB. Can be disk-only or RAM-only or mixed. Besides, it works on mac and linux, and can be used with other languages easy. http://www.valentina-db.com
I just finished building a first version of VelocityDb which is an excellent choice for embedded applications due to a small footprint, ease of use and high performance. It is also optionally distributable. Some usage is free, and limited time usage is free even for a distributed case.
For an object-oriented embedded database, check out Perst from McObject. Perst is open source/dual-licensed and you can download complete source code:
http://www.mcobject.com/perst
SQL CE is great and simple to integrate with.
Another option on the object database camp is db4o which supports java/.net natively.
Best