private string ProcessT4Template(string path, bool onlyPreprocess, CommandLineEngineHost host) { Console.WriteLine("Processing '{0}'...", path); var engine = new Engine(_libraryExporter, host); var fileName = Path.GetFileNameWithoutExtension(path); var content = File.ReadAllText(path); string transformedText; if (onlyPreprocess) { var relativeDir = Path.GetDirectoryName(path).Substring(_appEnv.ApplicationBasePath.Length); var classNamespace = _appEnv.ApplicationName; if (relativeDir.Length != 0) { classNamespace += '.' + relativeDir.Replace(Path.DirectorySeparatorChar, '.'); } transformedText = engine.PreprocessT4Template(content, fileName, classNamespace).PreprocessedContent; } else { transformedText = engine.ProcessT4Template(content); } return(transformedText); }
public string ProcessTemplate(string content) { var engine = new Engine(); var libraryManager = CallContextServiceLocator.Locator.ServiceProvider.GetService <ILibraryManager>(); var host = new CommandLineEngineHost(libraryManager); return(engine.ProcessTemplate(content, host)); }
private void WriteTemplate(string path, string transformedText, CommandLineEngineHost host) { Console.WriteLine("Writing '{0}'...", path); if (host.Encoding != null) { File.WriteAllText(path, transformedText, host.Encoding); } else { File.WriteAllText(path, transformedText); } }
private void ProcessT4Templates(string dir, bool onlyPreprocess) { var templates = GetT4TemplatePaths(dir); foreach (var path in templates) { var host = new CommandLineEngineHost(path); var transformedText = ProcessT4Template(path, onlyPreprocess, host); var output = Path.ChangeExtension(path, host.FileExtension); WriteTemplate(output, transformedText, host); } }
private async Task ProcessRazorTemplates(string dir, bool onlyPreprocess) { var templates = GetRazorTemplatePaths(dir); foreach (var path in templates) { var host = new CommandLineEngineHost(path); var transformedText = await ProcessRazorTemplate(path, onlyPreprocess, host); var output = path + host.FileExtension; WriteTemplate(output, transformedText, host); } }