public static RazorHost CreateHost (string fullPath) { var transformers = new RazorCodeTransformer[] { PreprocessedTemplateCodeTransformers.AddGeneratedTemplateClassAttribute, PreprocessedTemplateCodeTransformers.SimplifyHelpers, PreprocessedTemplateCodeTransformers.InjectBaseClass, PreprocessedTemplateCodeTransformers.MakePartialAndRemoveCtor, }; var host = new RazorHost (fullPath, transformers: transformers) { DefaultBaseClass = "", }; foreach (var import in defaultImports) { host.NamespaceImports.Add (import); } host.ParserFactory = (h) => new PreprocessedCSharpRazorCodeParser (); return host; }
public static RazorHost Create(string fullPath) { var transformers = new RazorCodeTransformer[] { PreprocessedTemplateCodeTransformers.AddGeneratedTemplateClassAttribute, PreprocessedTemplateCodeTransformers.SimplifyHelpers, PreprocessedTemplateCodeTransformers.InjectBaseClass, PreprocessedTemplateCodeTransformers.MakePartialAndRemoveCtor, }; var host = new RazorHost(fullPath, transformers: transformers) { DefaultBaseClass = "", EnableLinePragmas = true, }; foreach (var import in defaultImports) { host.NamespaceImports.Add(import); } host.ParserFactory = (h) => new PreprocessedCSharpRazorCodeParser(); return(host); }
public RazorHost(string fullPath, CodeDomProvider codeDomProvider = null, RazorCodeTransformer[] transformers = null, CodeGeneratorOptions codeGeneratorOptions = null) : base(RazorCodeLanguage.GetLanguageByExtension(".cshtml")) { if (fullPath == null) { throw new ArgumentNullException("fullPath"); } _transformers = transformers; _fullPath = fullPath; _codeDomProvider = codeDomProvider ?? new Microsoft.CSharp.CSharpCodeProvider (); base.DefaultNamespace = "ASP"; EnableLinePragmas = true; base.GeneratedClassContext = new GeneratedClassContext( executeMethodName: GeneratedClassContext.DefaultExecuteMethodName, writeMethodName: GeneratedClassContext.DefaultWriteMethodName, writeLiteralMethodName: GeneratedClassContext.DefaultWriteLiteralMethodName, writeToMethodName: "WriteTo", writeLiteralToMethodName: "WriteLiteralTo", templateTypeName: typeof(HelperResult).FullName, defineSectionMethodName: "DefineSection", beginContextMethodName: "BeginContext", endContextMethodName: "EndContext" ) { ResolveUrlMethodName = "Href" }; _codeGeneratorOptions = codeGeneratorOptions ?? new CodeGeneratorOptions () { // HACK: we use true, even though razor uses false, to work around a mono bug where it omits the // line ending after "#line hidden", resulting in the unparseable "#line hiddenpublic" BlankLinesBetweenMembers = true, BracingStyle = "C", // matches Razor built-in settings IndentString = String.Empty, }; }