本文整理汇总了C#中Raven.Storage.Managed.Impl.TableStorage.Compact方法的典型用法代码示例。如果您正苦于以下问题:C# TableStorage.Compact方法的具体用法?C# TableStorage.Compact怎么用?C# TableStorage.Compact使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Raven.Storage.Managed.Impl.TableStorage
的用法示例。
在下文中一共展示了TableStorage.Compact方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CanOpenAfterCompaction
public void CanOpenAfterCompaction()
{
var memoryPersistentSource = new MemoryPersistentSource();
var tableStorage = new TableStorage(memoryPersistentSource);
tableStorage.Initialze();
tableStorage.BeginTransaction();
tableStorage.Documents.Put(new JObject
{
{"key", "1"},
{"etag", Guid.NewGuid().ToByteArray()},
{"modified", DateTime.UtcNow},
{"id", 1},
{"entityName", "test"}
}, new byte[512] );
tableStorage.Documents.Put(new JObject
{
{"key", "2"},
{"etag", Guid.NewGuid().ToByteArray()},
{"modified", DateTime.UtcNow},
{"id", 1},
{"entityName", "test"}
}, new byte[512] );
tableStorage.Commit();
tableStorage.BeginTransaction();
tableStorage.Documents.Remove(new JObject { { "key", "1" } });
tableStorage.Commit();
tableStorage.Compact();
var remoteManagedStorageState = memoryPersistentSource.CreateRemoteAppDomainState();
new TableStorage(new MemoryPersistentSource(remoteManagedStorageState.Log)).Initialze();
}
示例2: Compact
public void Compact(InMemoryRavenConfiguration compactConfiguration)
{
using (var ps = new FileBasedPersistentSource(compactConfiguration.DataDirectory, "Raven", configuration.TransactionMode == TransactionMode.Safe))
using (var storage = new TableStorage(ps))
{
storage.Compact();
}
}