本文整理汇总了C#中Storage.Put方法的典型用法代码示例。如果您正苦于以下问题:C# Storage.Put方法的具体用法?C# Storage.Put怎么用?C# Storage.Put使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Storage
的用法示例。
在下文中一共展示了Storage.Put方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: should_sync_to_storage_change
public async Task should_sync_to_storage_change()
{
var changes = new List<NotifyCollectionChangedEventArgs>();
var storage = new Storage(x => new ObservableStorage<TestStorageObject>(new MemoryStorage<TestStorageObject>()));
var collection = new StorageCollection<TestStorageObject>(storage, "0", "6");
collection.CollectionChanged += (sender, e) => { lock (changes) { changes.Add(e); } };
await collection.LoadMoreItemsAsync(10);
await Task.Delay(20);
Assert.Equal(0, changes.Count);
await Task.WhenAll(Enumerable.Range(5, 3).Select(x => storage.Add(new TestStorageObject(x))));
await Task.Delay(20);
Assert.Equal(1, changes.Count);
Assert.Equal(1, collection.Count);
changes.Clear();
await Task.WhenAll(Enumerable.Range(0, 8).Select(x => storage.Put(new TestStorageObject(x))));
await Task.Delay(20);
Assert.Equal(6, changes.Count);
Assert.Equal(6, collection.Count);
changes.Clear();
await Task.WhenAll(Enumerable.Range(4, 4).Select(x => storage.Put(new TestStorageObject(x))));
await Task.Delay(20);
Assert.Equal(2, changes.Count);
Assert.Equal(6, collection.Count);
changes.Clear();
await Task.WhenAll(Enumerable.Range(2, 6).Select(x => storage.Delete<TestStorageObject>(x.ToString())));
await Task.Delay(20);
Assert.Equal(4, changes.Count);
Assert.Equal(2, collection.Count);
changes.Clear();
}
示例2: should_sync_to_concurrent_storage_changes
public async Task should_sync_to_concurrent_storage_changes()
{
var count = 100;
var storage = new Storage(x => new ObservableStorage<TestStorageObject>(new MemoryStorage<TestStorageObject>()));
await Task.WhenAll(Enumerable.Range(0, count).AsParallel().Select(i => storage.Put(new TestStorageObject(i))));
var collection = new StorageCollection<TestStorageObject>(storage, null, null).WithAllItems();
await Task.WhenAll(Enumerable.Range(count, count).AsParallel().Select(i => storage.Put(new TestStorageObject(i))));
await collection.ChangedTo(m => m.Select(x => x.Id).Distinct().Count() == count * 2);
}