Let's say we have a model as under
public class RSS
{
public string Id { get; set; }
public string QuestionID { get; set; }
public string QuestionTitle { get; set; }
public string QuestionDescription { get; set; }
public DateTime PublishDate { get; set; }
}
The below piece of code will delete data from from RSS model to RavenDB
public void DeleteRssFeed(string id)
{
using (var ds = new DocumentStore
{
Url = "http://localhost:8080",
DefaultDatabase = "CRUDDemo"
}.Initialize())
using (var session = ds.OpenSession())
{
var rss = session.Load<RSS>(id); //find the record with the id
if (null != rss)
{
//marks for deletion
session.Delete(rss);
//deletion completed. Saves the pending changes to the server.
session.SaveChanges();
}
}
}
As a first step, we are using the DocumentStore class that inherits from the abstract class DocumentStoreBase. The DocumentStore class is manages access to RavenDB and open sessions to work with RavenDB.The DocumentStore class needs a URL and optionally the name of the database. Our RavenDB server is running at 8080 port.Also we specified a DefaultDatabase name which is CRUDDemo here. The function Initialize() initializes the current instance.From the DocumentStore we get the Session object which we will use for all the operations in RavenDB. The method OpenSession() opens the session.This Session object provides the transactional functionality and also prepares a set of modifications that are submitted to the database with the SaveChanges()method.