public ActionResult Index(HomeViewModel model) { if (!String.IsNullOrWhiteSpace(model.Input)) { var openApiParser = new OpenApiParser(); OpenApiDocument doc = null; try { doc = openApiParser.Parse(model.Input); model.Errors = String.Join("\r\n", openApiParser.ParseErrors); } catch (Exception ex) { model.Errors = ex.Message; model.Output = string.Empty; } if (doc != null) { var outputwriter = new OpenApiV3Writer(doc); var outputstream = new MemoryStream(); outputwriter.Write(outputstream); outputstream.Position = 0; model.Output = new StreamReader(outputstream).ReadToEnd(); } } return(View("Index", model)); }
protected override Task SerializeToStreamAsync(Stream stream, TransportContext context) { var writer = new OpenApiV3Writer(this.document); writer.Write(stream); stream.Flush(); return(Task.FromResult <object>(null)); }
private string WriteContents(Tavis.OpenApi.Model.OpenApiDocument doc) { var outputwriter = new OpenApiV3Writer(doc); var outputstream = new MemoryStream(); outputwriter.Write(outputstream); outputstream.Position = 0; return(new StreamReader(outputstream).ReadToEnd()); }