private static void LoadHeaderElement(HeaderElement element, Snippet snippet) { snippet.Author = element.Author; snippet.Description = element.Description; snippet.Shortcut = element.Shortcut; snippet.Title = element.Title; if (element.AlternativeShortcuts != null) { foreach (string shortcut in element.AlternativeShortcuts) snippet.AlternativeShortcuts.Add(shortcut); } if (element.HelpUrl != null) { Uri uri; if (Uri.TryCreate(element.HelpUrl, UriKind.RelativeOrAbsolute, out uri)) snippet.HelpUrl = uri; } if (element.Keywords != null) { foreach (string keyword in element.Keywords) snippet.Keywords.Add(keyword); } if (element.SnippetTypes != null) { foreach (string value in element.SnippetTypes) { SnippetTypes snippetTypes; if (Enum.TryParse(value, out snippetTypes)) snippet.SnippetTypes |= snippetTypes; } } }
private static HeaderElement CreateHeaderElement(SerializationContext context) { var element = new HeaderElement(); Snippet snippet = context.Snippet; if (!string.IsNullOrEmpty(snippet.Title)) element.Title = snippet.Title; if (!string.IsNullOrEmpty(snippet.Author)) element.Author = snippet.Author; if (!string.IsNullOrEmpty(snippet.Description)) element.Description = snippet.Description; if (!string.IsNullOrEmpty(snippet.Shortcut)) element.Shortcut = snippet.Shortcut; if (snippet.HelpUrl != null) element.HelpUrl = snippet.HelpUrl.ToString(); if (snippet.SnippetTypes != SnippetTypes.None) element.SnippetTypes = GetSnippetTypes(snippet.SnippetTypes).ToArray(); if (snippet.Keywords.Count > 0) element.Keywords = snippet.Keywords.ToArray(); if (snippet.HasAlternativeShortcuts) element.AlternativeShortcuts = snippet.AlternativeShortcuts.ToArray(); return element; }