本文整理汇总了C#中Newtonsoft.Json.JsonSerializer.Add方法的典型用法代码示例。如果您正苦于以下问题:C# JsonSerializer.Add方法的具体用法?C# JsonSerializer.Add怎么用?C# JsonSerializer.Add使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Newtonsoft.Json.JsonSerializer
的用法示例。
在下文中一共展示了JsonSerializer.Add方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ApplyConflict
public async Task<HttpResponseMessage> ApplyConflict(string filename, long remoteVersion, string remoteServerId,
string remoteServerUrl)
{
var localMetadata = GetLocalMetadata(filename);
if (localMetadata == null)
throw new HttpResponseException(HttpStatusCode.NotFound);
var contentStream = await Request.Content.ReadAsStreamAsync();
var current = new HistoryItem
{
ServerId = Storage.Id.ToString(),
Version = long.Parse(localMetadata[SynchronizationConstants.RavenSynchronizationVersion])
};
var currentConflictHistory = Historian.DeserializeHistory(localMetadata);
currentConflictHistory.Add(current);
var remote = new HistoryItem
{
ServerId = remoteServerId,
Version = remoteVersion
};
var remoteConflictHistory =
new JsonSerializer().Deserialize<IList<HistoryItem>>(new JsonTextReader(new StreamReader(contentStream)));
remoteConflictHistory.Add(remote);
var conflict = new ConflictItem
{
CurrentHistory = currentConflictHistory,
RemoteHistory = remoteConflictHistory,
FileName = filename,
RemoteServerUrl = Uri.UnescapeDataString(remoteServerUrl)
};
ConflictArtifactManager.Create(filename, conflict);
Publisher.Publish(new ConflictDetected
{
FileName = filename,
SourceServerUrl = remoteServerUrl
});
Log.Debug(
"Conflict applied for a file '{0}' (remote version: {1}, remote server id: {2}).", filename, remoteVersion,
remoteServerId);
return new HttpResponseMessage(HttpStatusCode.NoContent);
}