csharp
public class Person
{
public string Id { get; set; }
public string Name { get; set; }
public int Age { get; set; }
}
using (var session = store.OpenSession())
{
var person = new Person { Name = "John Doe", Age = 30 };
session.Store(person);
session.SaveChanges();
}
using (var session = store.OpenSession())
{
Console.WriteLine($"Name: {person.Name}, Age: {person.Age}");
}
json
{
"Settings": {
"Raven/DataDir": "D:\\RavenDB\\Databases\\",
"Raven/Esent/MaxCacheSize": "256",
"Raven/MaxConcurrentRequestsForDatabase": "1024",
"Raven/MaxConcurrentMultiGetRequests": "16",
"Raven/ActiveBundles": "PeriodicBackup",
"Raven/PluginsDirectory": ".\\Plugins",
"Raven/Voron/AllowIncrementalBackups": "false"
}
}
csharp
documentStore.DatabaseCommands.PutIndex("MyIndex",
new IndexDefinitionBuilder<Person>
{
Map = persons => from person in persons
select new { person.Name }
});
using (var session = store.OpenSession())
{
var results = session.Query<Person>("MyIndex")
.Search(x => x.Name, "John")
.ToList();
foreach (var person in results)
{
Console.WriteLine($"Name: {person.Name}, Age: {person.Age}");
}
}
csharp
using (var subscription = store.Subscriptions.Create<Person>())
{
subscription.Subscribe(changes =>
{
foreach (var change in changes)
{
Console.WriteLine($"Change Type: {change.Type}, Document ID: {change.Id}");
}
});
Console.ReadKey();
}