本文整理汇总了C#中Entry.ToDictionary方法的典型用法代码示例。如果您正苦于以下问题:C# Entry.ToDictionary方法的具体用法?C# Entry.ToDictionary怎么用?C# Entry.ToDictionary使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Entry
的用法示例。
在下文中一共展示了Entry.ToDictionary方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: fetch
private void fetch(Entry[] entries)
{
var requests = entries.ToDictionary(x => x.Request.RequestId, x => x);
var parameter = requests.Values.Select(x => x.Request).ToArray();
try
{
var results = _storage.FetchEvent(parameter);
//these can't fail as they're try operations.
foreach (var requestId in requests.Keys)
{
if (results.ContainsKey(requestId) == false)
requests[requestId].SignalNotFound();
else
requests[requestId].SignalResult(results[requestId]);
}
}
catch (Exception e)
{
foreach (var entry in entries)
entry.Fail(e);
}
}
示例2: store
private void store(Entry[] entries)
{
Logger.Debug("[StorageWriter] Writing entries.");
var commits = entries.ToDictionary(x => x.Commit.CommitId, x => x);
var commit = new CommitsForStorage(commits.Values.Select(x => x.Commit).ToArray());
try
{
Logger.Debug("[StorageWriter] Storing {0} commits.", commit.Commits.Length);
var results = _storage.Store(commit);
Logger.Debug("[StorageWriter] Entries stored.");
//these can't fail as they're try operations.
foreach (var c in results.SuccessfulCommits)
commits[c].signalCompletion();
foreach (var c in results.FailedDueToConcurrencyCommits)
commits[c].signalConcurrencyFailure();
}
catch (Exception e)
{
foreach (var entry in entries)
entry.Fail(e);
}
finally
{
commits.Clear();
}
}