1: public static string Execute()
2: { 3: try
4: { 5: DataExporter exporter = new DataExporter();
6:
7: PageReference pf = new PageReference(MySettings.Instance.PageID);
8: PageData rootPageData = DataFactory.Instance.GetPage(pf, LanguageSelector.MasterLanguage());
9:
10:
11:
12: if (MySettings.Instance.Overwrite)
13: { 14: CleanFolder(MySettings.Instance.Path);
15: }
16:
17: string path = MySettings.Instance.Path + "ScheduledExporterDump_" + DateTime.Now.ToLongTimeString().Replace(':', '_') + ".episerverdata"; 18:
19: exporter.PageTypes.AddRange(PageType.List());
20: exporter.Frames.AddRange(Frame.List());
21: exporter.TabDefinitions.AddRange(TabDefinition.List());
22: exporter.DynamicPropertyDefinitions.AddRange(PageDefinition.ListDynamic());
23: exporter.Categories.AddRange(Category.GetRoot().Categories);
24:
25: ExportSource sourceRoot = new ExportSource(PageReference.RootPage, EPiServer.Core.Transfer.ExportSource.RecursiveLevelInfinity);
26: exporter.SourceRoots.Add(sourceRoot);
27:
28: exporter.Stream = new FileStream(path , FileMode.Create, FileAccess.Write | FileAccess.Read, FileShare.Read);
29: exporter.Export();
30: exporter.Close();
31: if (exporter.Log.Errors.Count > 0)
32: { 33: throw new Exception("errors occured,try &debug=true"); 34: }
35:
36: return "Success - finnished with no errors";
37: }
38:
39: catch (Exception err)
40: { 41:
42: return "error - " + err.Message;
43: }
44:
45: }