public static IEnumerable<string> ConvertFiles(IEnumerable<string> filesToConvert)
        {
            var parser = new WebFormsParser(new WebFormsNodeFactory(),
                                            new WebFormsNodeFilterProvider(new WebFormsCodeGroupFactory()));
            var renderer = new RazorViewRenderer(new RazorNodeRendererProvider());
            var converter =
                new WebFormsToRazorConverter(new RazorNodeConverterProvider(new RazorDirectiveNodeFactory(),
                                                                            new RazorSectionNodeFactory(),
                                                                            new RazorCodeNodeFactory(),
                                                                            new RazorTextNodeFactory(),
                                                                            new RazorCommentNodeFactory(),
                                                                            new RazorExpressionNodeFactory(),
                                                                            new ContentTagConverterConfiguration()));
            var convertedFiles = new List<string>();

            foreach (var file in filesToConvert)
            {
                var webFormsPageSource = File.ReadAllText(file, Encoding.UTF8);
                var webFormsDocument = parser.Parse(webFormsPageSource);
                var razorDom = converter.Convert(webFormsDocument);
                var razorPage = renderer.Render(razorDom);
                var outputFileName = Path.Combine(Path.GetDirectoryName(file), Path.GetFileNameWithoutExtension(file) + ".cshtml");
                File.WriteAllText(outputFileName, razorPage, Encoding.UTF8);
                convertedFiles.Add(outputFileName);
            }
            return convertedFiles;
        }
Exemple #2
0
        public static IEnumerable <string> ConvertFiles(IEnumerable <string> filesToConvert)
        {
            var parser = new WebFormsParser(new WebFormsNodeFactory(),
                                            new WebFormsNodeFilterProvider(new WebFormsCodeGroupFactory()));
            var renderer  = new RazorViewRenderer(new RazorNodeRendererProvider());
            var converter =
                new WebFormsToRazorConverter(new RazorNodeConverterProvider(new RazorDirectiveNodeFactory(),
                                                                            new RazorSectionNodeFactory(),
                                                                            new RazorCodeNodeFactory(),
                                                                            new RazorTextNodeFactory(),
                                                                            new RazorCommentNodeFactory(),
                                                                            new RazorExpressionNodeFactory(),
                                                                            new ContentTagConverterConfiguration()));
            var convertedFiles = new List <string>();

            foreach (var file in filesToConvert)
            {
                var webFormsPageSource = File.ReadAllText(file, Encoding.UTF8);
                var webFormsDocument   = parser.Parse(webFormsPageSource);
                var razorDom           = converter.Convert(webFormsDocument);
                var razorPage          = renderer.Render(razorDom);
                var outputFileName     = Path.Combine(Path.GetDirectoryName(file), Path.GetFileNameWithoutExtension(file) + ".cshtml");
                File.WriteAllText(outputFileName, razorPage, Encoding.UTF8);
                convertedFiles.Add(outputFileName);
            }
            return(convertedFiles);
        }
Exemple #3
0
 public RazorProcessor(IFileSystem fileSystem, RazorViewRenderer renderer,
                       ILogger logger, IUrlProvider urlProvider, BeardConfig config, GeneratorContext context)
 {
     _fileSystem  = fileSystem;
     _log         = logger;
     _urlProvider = urlProvider;
     _config      = config;
     _renderer    = renderer;
     _context     = context;
 }
Exemple #4
0
 public HtmlTagNodeConverter(
     IRazorTextNodeFactory textNodeFactory,
     IRazorNodeConverterProvider nodeConverterProvider,
     IWebFormsParser webFormsParser)
 {
     this.textNodeFactory       = textNodeFactory;
     this.nodeConverterProvider = nodeConverterProvider;
     this.webFormsParser        = webFormsParser;
     converter = new WebFormsToRazorConverter(this.nodeConverterProvider);
     renderer  = new RazorViewRenderer(new RazorNodeRendererProvider());
 }
        static void Main(string[] args)
        {
            //this is required because the IHostingEnvironment needs to be initialized with this assembly name
            RazorViewRenderer.Initialize(Assembly.GetExecutingAssembly());

            //this will compile the test view in this project and display it
            Console.Write(RazorViewRenderer.RenderView("Views/TestView.cshtml"));

            //this will run the precompiled view in the razor library
            Console.Write(RazorViewRenderer.RenderView("Views/TestView2.cshtml"));

            Console.ReadKey();
        }
        public static IActionResult Run(
            [HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
            ILogger log)
        {
            log.LogInformation("Rendering local view from project folder.");

            //this is required because the IHostingEnvironment needs to be initialized with this assembly name
            RazorViewRenderer.Initialize(Assembly.GetExecutingAssembly());

            //This will fail, the view will not compile correctly on functions
            var view = RazorViewRenderer.RenderView("Views/TestView.cshtml");

            return(new OkObjectResult(view));
        }
Exemple #7
0
        public static IActionResult Run(
            [HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
            ILogger log)
        {
            log.LogInformation("Rendering precompiled view from class library.");

            //this is required because the IHostingEnvironment needs to be initialized with this assembly name
            RazorViewRenderer.Initialize(Assembly.GetExecutingAssembly());

            //This will fail if you haven't views dll manually into the bin folder
            var view = RazorViewRenderer.RenderView("Views/TestView2.cshtml");


            return(new OkObjectResult(view));
        }
Exemple #8
0
        public HttpResponseMessage RenderHTMLByRazor()
        {
            var model = new SampleModel
            {
                FirstName = "John",
                LastName  = "Doe"
            };

            var sDocument = RazorViewRenderer.RenderView("~/views/Sample.cshtml", model);

            var response = new HttpResponseMessage();

            response.Content = new StringContent(sDocument);
            response.Content.Headers.ContentType = new MediaTypeHeaderValue("text/html");
            return(response);
        }
        public RazorViewRendererTests()
        {
            firstNodeRenderer = new Mock<IRazorNodeRenderer>();
            secondNodeRenderer = new Mock<IRazorNodeRenderer>();

            renderers = new List<IRazorNodeRenderer> { firstNodeRenderer.Object, secondNodeRenderer.Object };
            rendererProvider = new Mock<IRazorNodeRendererProvider>();
            rendererProvider.SetupGet(p => p.NodeRenderers).Returns(renderers);

            viewRenderer = new RazorViewRenderer(rendererProvider.Object);

            rootNodeMock = new Mock<IRazorNode>();
            childNodeMock = new Mock<IRazorNode>();
            rootNodeMock.SetupGet(n => n.Children).Returns(new IRazorNode[] { childNodeMock.Object });

            documentMock = new Mock<IDocument<IRazorNode>>();
            documentMock.SetupGet(d => d.RootNode).Returns(rootNodeMock.Object);
        }
        public RazorViewRendererTests()
        {
            firstNodeRenderer  = new Mock <IRazorNodeRenderer>();
            secondNodeRenderer = new Mock <IRazorNodeRenderer>();

            renderers = new List <IRazorNodeRenderer> {
                firstNodeRenderer.Object, secondNodeRenderer.Object
            };
            rendererProvider = new Mock <IRazorNodeRendererProvider>();
            rendererProvider.SetupGet(p => p.NodeRenderers).Returns(renderers);

            viewRenderer = new RazorViewRenderer(rendererProvider.Object);

            rootNodeMock  = new Mock <IRazorNode>();
            childNodeMock = new Mock <IRazorNode>();
            rootNodeMock.SetupGet(n => n.Children).Returns(new IRazorNode[] { childNodeMock.Object });

            documentMock = new Mock <IDocument <IRazorNode> >();
            documentMock.SetupGet(d => d.RootNode).Returns(rootNodeMock.Object);
        }
 public UriSliderService(RazorViewRenderer renderer, MetadataRepository metadataRepository, MediaService mediaService)
 {
     _renderer           = renderer;
     _metadataRepository = metadataRepository;
     _mediaService       = mediaService;
 }