static void Main(string[] args) { var dir = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); var templateFile = Path.Combine(dir, "template.dotx"); var dataFile = Path.Combine(dir, "template.json"); using (var documentServer = new RichEditDocumentServer()) { if (File.Exists(templateFile) && documentServer.LoadFileInDetectionMode(templateFile)) { } else { throw new Exception("Could not load file"); } documentServer.BeginUpdate(); try { var dataText = File.ReadAllText(dataFile); var template = JsonConvert.DeserializeObject <Template>(dataText); InsertItems(documentServer.Document, template); } finally { documentServer.EndUpdate(); } SaveDocument(dir, documentServer); } }