コード例 #1
0
ファイル: Program.cs プロジェクト: raytnham/nodatime
        private static async Task ProcessSnippets(string projectFile, string outputDirectory)
        {
            // Make sure snippets run in an invariant culture.
            CultureInfo.CurrentCulture = CultureInfo.InvariantCulture;

            // TODO: Work out why it doesn't work when targeting netcoreapp1.0
            var workspace = MSBuildWorkspace.Create(new Dictionary <string, string> {
                ["TargetFramework"] = "net451"
            });
            var project = await workspace.OpenProjectAsync(projectFile);

            var sourceSnippets = await LoadSnippetsAsync(project);

            var rewriter = new SnippetRewriter(project);

            using (var writer = File.CreateText(Path.Combine(outputDirectory, "snippets.md")))
            {
                foreach (var snippet in sourceSnippets)
                {
                    var rewritten = await rewriter.RewriteSnippetAsync(snippet);

                    rewritten.Write(writer);
                }
            }
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: maluche/nodatime
        private static async Task ProcessSnippets(string solutionFile, string projectName, string outputDirectory)
        {
            // Make sure snippets run in an invariant culture.
            CultureInfo.CurrentCulture = CultureInfo.InvariantCulture;

            var project = await LoadProjectAsync(solutionFile, projectName);

            var sourceSnippets = await LoadSnippetsAsync(project);

            var rewriter = new SnippetRewriter(project);

            using (var writer = File.CreateText(Path.Combine(outputDirectory, "snippets.md")))
            {
                foreach (var snippet in sourceSnippets)
                {
                    var rewritten = await rewriter.RewriteSnippetAsync(snippet);

                    rewritten.Write(writer);
                }
            }
        }
コード例 #3
0
        private static async Task ProcessSnippets(string solutionFile, string projectName, string outputDirectory)
        {
            // Make sure snippets run in an invariant culture.
            CultureInfo.CurrentCulture = CultureInfo.InvariantCulture;

            var project = await LoadProjectAsync(solutionFile, projectName);

            var sourceSnippets = await LoadSnippetsAsync(project);

            var rewriter = new SnippetRewriter(project);

            using (var writer = File.CreateText(Path.Combine(outputDirectory, "snippets.md")))
            {
                foreach (var snippet in sourceSnippets)
                {
                    Console.WriteLine($"Generating snippet for {snippet.Uid}");
                    var rewritten = await rewriter.RewriteSnippetAsync(snippet);

                    rewritten.Write(writer);
                    // For some reason, we run out of memory without this. Eek.
                    GC.Collect();
                }
            }
        }