Adding RavenDB to your application

There are two flavors of RavenDB available:

  • The RavenDB Client is a lightweight library enabling you to connect to any RavenDB server; it exposes all RavenDB's strengths to your .NET or Silverlight application.

  • RavenDB Embedded, which is a full-blown RavenDB server ready to be embedded in your application.

If you are not sure what to choose, go with the RavenDB Client. Only use Embedded if you are certain this is indeed what you need.


RavenDB Embedded can't run on the Client Profile.

Each of those can be added to your project by either using nuget or extracting the contents of a build package.

Installing using nuget

You can consume RavenDB through NuGet. Follow this article for instructions how to do that.

Manually adding RavenDB using the build package

Grab a stable build from the downloads page, and extract the required files to a new "RavenDB" folder in your application. You'll then need update your project with references to them.

Here's how to know which are the files you are going to need:

The folder structure in a RavenDB build package
  • /Client - Lightweight RavenDB client for .NET 4.0. This is the recommended client to use.

  • /Client-3.5 - Lightweight RavenDB client for .NET 3.5.

  • /Silverlight - A lightweight Silverlight 4.0 client for RavenDB and its dependencies.

  • /EmbeddedClient - The files required to run the RavenDB client, in server or embedded mode.

Whichever client version you choose to use, reference all the assemblies in the corresponding folder to your project.

As for the rest of the folders in the package, here's a brief description of what they contain:

  • /Backup - Standalone backup tool, for performing backup operations using a user with admin privileges.

  • /Bundles - Bundles that extend RavenDB in various ways.

  • /Samples - Some sample applications for Raven. Under each sample application folder there is a "Start Raven.cmd" file which will starts Raven with all the data and indexes required to run the sample successfully.

  • /Smuggler - The Import/Export utility for RavenDB.

  • /Server - The files required to run RavenDB in server / service mode. Execute /Server/Raven.Server.exe /install to register and start the RavenDB service.

  • /Web - The files required to run RavenDB under IIS. Create an IIS site in the /Web directory to start the RavenDB site.

For more information on the various deployment options for RavenDB, see in the Deployment section of the chapter on the Server side.