Exemplo n.º 1
0
        public static string Render(Context context, string input)
        {
            var      reader   = new StringReader(input);
            Assembly assembly = Assemble(reader);
            RazorTemplate <Context> template = CreateTemplateInstance(assembly, context);

            return(template.Render());
        }
Exemplo n.º 2
0
        public static void Render(Context context, Stream input, Stream output)
        {
            var reader = new StreamReader(input);
            var writer = new StreamWriter(output);

            Assembly assembly = Assemble(reader);
            RazorTemplate <Context> template = CreateTemplateInstance(assembly, context);

            writer.Write(template.Render());
            writer.Flush();
        }
Exemplo n.º 3
0
        public static RazorTemplate <Context> CreateTemplateInstance(Assembly assembly, Context context)
        {
            //Type type = assembly.GetType("RazorOutput.Template");
            Type type = assembly.GetExportedTypes().Single(); // there is only one
            RazorTemplate <Context> template = Activator.CreateInstance(type) as RazorTemplate <Context>;

            var property = type.GetProperty("Model");

            property.SetValue(template, context, null);

            return(template);
        }