示例#1
0
        private static CompilationResult Compile(CompilerOptions options)
        {
            var compiler = new ViewStaticCompiler();

            compiler.Options = options;
            return(compiler.Execute());
        }
 public OfflineCompilationControlResolver(DotvvmConfiguration config, IControlBuilderFactory controlBuilderFactory, ViewStaticCompiler compiler, CompiledAssemblyCache compiledAssemblyCache)
     : base(config, controlBuilderFactory, compiledAssemblyCache)
 {
     this.compiler = compiler;
 }
示例#3
0
        internal static DotvvmConfiguration InitDotVVM(Assembly webSiteAssembly, string webSitePath, ViewStaticCompiler viewStaticCompiler, Action <IServiceCollection> additionalServices = null)
        {
            var dotvvmStartup = new DotvvmStartupClassResolver().GetDotvvmStartupInstance(webSiteAssembly);
            var serviceConfiguratorExecutor = new DotvvmServiceConfiguratorResolver().GetServiceConfiguratorExecutor(webSiteAssembly);

            var config = DotvvmConfiguration.CreateDefault(services => {
                if (viewStaticCompiler != null)
                {
                    services.AddSingleton <ViewStaticCompiler>(viewStaticCompiler);
                    services.AddSingleton <IControlResolver, OfflineCompilationControlResolver>();
                    services.TryAddSingleton <IViewModelProtector, FakeViewModelProtector>();
                    services.AddSingleton(new RefObjectSerializer());
                }

                serviceConfiguratorExecutor.ConfigureServices(services);
                additionalServices?.Invoke(services);
            });

            config.ApplicationPhysicalPath = webSitePath;
            config.CompiledViewsAssemblies = null;

            //configure dotvvm startup
            dotvvmStartup?.Configure(config, webSitePath);

            return(config);
        }
示例#4
0
 public OfflineCompilationControlResolver(DotvvmMarkupConfiguration config, IControlBuilderFactory controlBuilderFactory, ViewStaticCompiler compiler)
     : base(config, controlBuilderFactory)
 {
     this.compiler = compiler;
 }