private DocumentViewTypeViewModel BuildFieldViewModel(DocumentViewTypeViewModel model, Document selected, string name) { DocumentField field = selected.Fields.Where(f => HtmlHelper.RouteFriendlyName(f.FieldName) == name).FirstOrDefault(); if (field == null) return null; model.TypeName = field.FieldName; model.Value = field.Value; model.ShortDescription = field.ShortDescription; model.LongDescription = field.LongDescription; model.Summary = field.Summary; foreach (DocumentExample item in field.Examples) { model.ExampleUseage += $"<p>{item.Text}</p>"; } foreach (DocumentException exception in field.Exception) { model.Exceptions += $"<p>{exception.ExceptionName}<br />{exception.Summary}"; } model.Remarks = field.Remarks; return model; }
private DocumentViewTypeViewModel BuildMethodViewModel(DocumentViewTypeViewModel model, Document selected, string name) { DocumentMethod method = selected.Methods.Where(f => HtmlHelper.RouteFriendlyName(f.MethodName) == name).FirstOrDefault(); if (method == null) return null; model.TypeName = $"{ReturnUptoParam(method.MethodName)} Method"; model.Returns = method.Returns; model.ShortDescription = method.ShortDescription; model.LongDescription = method.LongDescription; model.Summary = method.Summary; model.ExampleUseage = method.ExampleUseage ?? String.Empty; model.Parameters = method.Parameters; foreach (DocumentExample item in method.Examples) { model.ExampleUseage += $"<p>{item.Text}</p>"; } foreach (DocumentException exception in method.Exception) { model.Exceptions += $"<p>{exception.ExceptionName}<br />{exception.Summary}"; } model.Remarks = method.Remarks; return model; }
private DocumentViewTypeViewModel BuildPropertyViewModel(DocumentViewTypeViewModel model, Document selected, string name) { DocumentProperty property = selected.Properties.Where(f => HtmlHelper.RouteFriendlyName(f.PropertyName) == name).FirstOrDefault(); if (property == null) return null; model.TypeName = $"{property.PropertyName} Property"; model.Value = property.Value; model.ShortDescription = property.ShortDescription; model.LongDescription = property.LongDescription; model.Summary = property.Summary; foreach (DocumentExample item in property.Examples) { model.ExampleUseage += $"<p>{item.Text}</p>"; } foreach (DocumentException exception in property.Exception) { model.Exceptions += $"<p>{exception.ExceptionName}<br />{exception.Summary}"; } model.Remarks = property.Remarks; return model; }
private DocumentViewTypeViewModel BuildDocumentViewTypeModel(string className, string classType, string typeName, out Document selected) { selected = _documentationService.GetDocuments() .Where(d => d.DocumentType == DocumentType.Class) .ToList().Where(c => HtmlHelper.RouteFriendlyName(c.ClassName) == className) .FirstOrDefault(); if (selected == null) return null; DocumentData data = (DocumentData)selected.Tag; if (data.ReferenceData == null) { List<Document> documents = _documentationService.GetDocuments() .Where(d => d.DocumentType == DocumentType.Assembly || d.DocumentType == DocumentType.Custom) .OrderBy(o => o.SortOrder).ThenBy(o => o.Title) .ToList(); data.ReferenceData = GetAllReferences(selected, data, documents); } DocumentViewTypeViewModel model = new DocumentViewTypeViewModel(GetModelData(), selected.Title, data.ReferenceData); model.Assembly = HtmlHelper.RouteFriendlyName(selected.AssemblyName); model.Namespace = HtmlHelper.RouteFriendlyName(selected.NameSpaceName); model.ClassName = HtmlHelper.RouteFriendlyName(selected.ClassName); if (data.SeeAlso != null && data.SeeAlso.Count > 0) { model.SeeAlso = data.SeeAlso; } if (data.SeeAlso != null && data.SeeAlso.Count > 0) model.SeeAlso = data.SeeAlso; model.TranslateStrings = selected.DocumentType != DocumentType.Custom && selected.DocumentType != DocumentType.Document && selected.DocumentType != DocumentType.Assembly; switch (classType) { case "Constructor": return BuildConstructorViewModel(model, selected, typeName); case "Method": return BuildMethodViewModel(model, selected, typeName); case "Property": return BuildPropertyViewModel(model, selected, typeName); case "Field": return BuildFieldViewModel(model, selected, typeName); default: throw new InvalidOperationException(SharedPluginFeatures.Constants.InvalidTypeName); } }
private DocumentViewTypeViewModel BuildConstructorViewModel(DocumentViewTypeViewModel model, Document selected, string name) { DocumentMethod constructor = selected.Constructors.Where(f => HtmlHelper.RouteFriendlyName(f.MethodName) == name).FirstOrDefault(); if (constructor == null) return null; model.TypeName = $"{ReturnUptoParam(constructor.MethodName)} Constructor"; model.Returns = constructor.Returns; model.ShortDescription = constructor.ShortDescription; model.LongDescription = constructor.LongDescription; model.Summary = constructor.Summary; model.ExampleUseage = constructor.ExampleUseage; model.Parameters = constructor.Parameters; foreach (DocumentExample item in constructor.Examples) { model.ExampleUseage += $"<p>{item.Text}</p>"; } foreach (DocumentException exception in constructor.Exception) { model.Exceptions += $"<p>{exception.ExceptionName}<br />{exception.Summary}"; } model.Remarks = constructor.Remarks; return model; }
public IActionResult ViewType(string className, string classType, string typeName) { DocumentViewTypeViewModel model = BuildDocumentViewTypeModel(className, classType, typeName, out Document selected); if (model == null) return RedirectToAction(nameof(Index)); return View(model); }
private DocumentViewTypeViewModel BuildFieldViewModel(DocumentViewTypeViewModel model, Document selected, string name) { DocumentField field = selected.Fields.Where(f => HtmlHelper.RouteFriendlyName(f.FieldName) == name).FirstOrDefault(); if (field == null) { return(null); } model.TypeName = field.FieldName; model.Value = field.Value; model.ShortDescription = field.ShortDescription; model.LongDescription = field.LongDescription; model.Summary = field.Summary; return(model); }
private DocumentViewTypeViewModel BuildPropertyViewModel(DocumentViewTypeViewModel model, Document selected, string name) { DocumentProperty property = selected.Properties.Where(f => HtmlHelper.RouteFriendlyName(f.PropertyName) == name).FirstOrDefault(); if (property == null) { return(null); } model.TypeName = $"{property.PropertyName} Property"; model.Value = property.Value; model.ShortDescription = property.ShortDescription; model.LongDescription = property.LongDescription; model.Summary = property.Summary; return(model); }
private DocumentViewTypeViewModel BuildMethodViewModel(DocumentViewTypeViewModel model, Document selected, string name) { DocumentMethod method = selected.Methods.Where(f => HtmlHelper.RouteFriendlyName(f.MethodName) == name).FirstOrDefault(); if (method == null) { return(null); } model.TypeName = $"{ReturnUptoParam(method.MethodName)} Method"; model.Returns = method.Returns; model.ShortDescription = method.ShortDescription; model.LongDescription = method.LongDescription; model.Summary = method.Summary; model.ExampleUseage = method.ExampleUseage; model.Parameters = method.Parameters; return(model); }
private DocumentViewTypeViewModel BuildConstructorViewModel(DocumentViewTypeViewModel model, Document selected, string name) { DocumentMethod constructor = selected.Constructors.Where(f => HtmlHelper.RouteFriendlyName(f.MethodName) == name).FirstOrDefault(); if (constructor == null) { return(null); } model.TypeName = $"{ReturnUptoParam(constructor.MethodName)} Constructor"; model.Returns = constructor.Returns; model.ShortDescription = constructor.ShortDescription; model.LongDescription = constructor.LongDescription; model.Summary = constructor.Summary; model.ExampleUseage = constructor.ExampleUseage; model.Parameters = constructor.Parameters; return(model); }