public static ApiReferenceBuildOutput FromModel(ItemViewModel vm) { if (vm == null) { return(null); } return(new ApiReferenceBuildOutput { Uid = vm.Uid, Id = XrefDetails.GetHtmlId(vm.Uid), Parent = vm.Parent, IsExternal = false, Href = vm.Href, Name = ApiBuildOutputUtility.TransformToLanguagePairList(vm.Name, vm.Names, vm.SupportedLanguages), FullName = ApiBuildOutputUtility.TransformToLanguagePairList(vm.FullName, vm.FullNames, vm.SupportedLanguages), Spec = GetSpecNames(ApiBuildOutputUtility.GetXref(vm.Uid, vm.FullName, vm.Name), vm.SupportedLanguages), Type = vm.Type, Summary = vm.Summary, Platform = vm.Platform, Source = vm.Source, Documentation = vm.Documentation, AssemblyNameList = vm.AssemblyNameList, NamespaceName = vm.NamespaceName, Remarks = vm.Remarks, Examples = vm.Examples, Overridden = vm.Overridden, SeeAlsos = vm.SeeAlsos?.Select(s => ApiCrefInfoBuildOutput.FromModel(s)).ToList(), Sees = vm.Sees?.Select(s => ApiCrefInfoBuildOutput.FromModel(s)).ToList(), Inheritance = vm.Inheritance?.Select(i => FromUid(i)).ToList(), Implements = vm.Implements, InheritedMembers = vm.InheritedMembers, Modifiers = vm.Modifiers, Conceptual = vm.Conceptual, Metadata = vm.Metadata, Syntax = ApiSyntaxBuildOutput.FromModel(vm.Syntax, vm.SupportedLanguages), Exceptions = vm.Exceptions?.Select(s => ApiCrefInfoBuildOutput.FromModel(s)).ToList(), }); }
private static ApiBuildOutput FromModel(ItemViewModel model, Dictionary <string, ApiReferenceBuildOutput> references, Dictionary <string, object> metadata) { if (model == null) { return(null); } return(new ApiBuildOutput { Uid = model.Uid, Id = XrefDetails.GetHtmlId(model.Uid), Parent = ApiBuildOutputUtility.GetReferenceViewModel(model.Parent, references, model.SupportedLanguages), Children = GetReferenceList(model.Children, references, model.SupportedLanguages), Href = model.Href, SupportedLanguages = model.SupportedLanguages, Name = ApiBuildOutputUtility.TransformToLanguagePairList(model.Name, model.Names, model.SupportedLanguages), FullName = ApiBuildOutputUtility.TransformToLanguagePairList(model.FullName, model.FullNames, model.SupportedLanguages), Type = model.Type, Source = model.Source, Documentation = model.Documentation, AssemblyNameList = model.AssemblyNameList, NamespaceName = ApiBuildOutputUtility.GetReferenceViewModel(model.NamespaceName, references, model.SupportedLanguages), Summary = model.Summary, Remarks = model.Remarks, Examples = model.Examples, Syntax = ApiSyntaxBuildOutput.FromModel(model.Syntax, references, model.SupportedLanguages), Overridden = ApiBuildOutputUtility.GetReferenceViewModel(model.Overridden, references, model.SupportedLanguages), Exceptions = GetCrefInfoList(model.Exceptions, references, model.SupportedLanguages), SeeAlsos = GetCrefInfoList(model.SeeAlsos, references, model.SupportedLanguages), Sees = GetCrefInfoList(model.Sees, references, model.SupportedLanguages), Inheritance = GetReferenceList(model.Inheritance, references, model.SupportedLanguages, true), Implements = GetReferenceList(model.Implements, references, model.SupportedLanguages), InheritedMembers = GetReferenceList(model.InheritedMembers, references, model.SupportedLanguages), Conceptual = model.Conceptual, Platform = model.Platform, Metadata = metadata.Concat(model.Metadata.Where(p => !metadata.Keys.Contains(p.Key))).ToDictionary(p => p.Key, p => p.Value), }); }
public static ApiReferenceBuildOutput FromModel(ReferenceViewModel vm, string[] supportedLanguages) { if (vm == null) { return(null); } return(new ApiReferenceBuildOutput { Uid = vm.Uid, Id = XrefDetails.GetHtmlId(vm.Uid), Parent = vm.Parent, Definition = vm.Definition, IsExternal = vm.IsExternal, Href = vm.Href, Name = ApiBuildOutputUtility.TransformToLanguagePairList(vm.Name, vm.NameInDevLangs, supportedLanguages), FullName = ApiBuildOutputUtility.TransformToLanguagePairList(vm.FullName, vm.FullNameInDevLangs, supportedLanguages), Spec = GetSpecNames(ApiBuildOutputUtility.GetXref(vm.Uid, vm.FullName, vm.Name), supportedLanguages, vm.Specs), Type = vm.Type, Summary = vm.Summary, Platform = vm.Platform, Syntax = ApiSyntaxBuildOutput.FromModel(vm.Syntax, supportedLanguages), }); }