示例#1
0
        private static ViewContext CompileView(string viewContents)
        {
            var settings  = new SparkSettings();
            var container = SparkRubyEngineStarter.CreateContainer(settings);

            var viewFolder = new InMemoryViewFolder {
                { string.Format("stub{0}index.spark", Path.DirectorySeparatorChar), viewContents }
            };

            container.SetServiceBuilder <IViewFolder>(c => viewFolder);
            var viewEngine = container.GetService <IViewEngine>();

            var httpContext = new StubHttpContext();


            var routeData = new RouteData();

            routeData.Values.Add("controller", "stub");
            routeData.Values.Add("action", "index");

            var controller        = new StubController();
            var controllerContext = new ControllerContext(httpContext, routeData, controller);

            var result = viewEngine.FindPartialView(controllerContext, "index", false);

            return(new ViewContext(controllerContext, result.View, new ViewDataDictionary(), new TempDataDictionary(), new StringWriter()));
        }
示例#2
0
 public static void RegisterViewEngine(ICollection <IViewEngine> engines)
 {
     SparkRubyEngineStarter.RegisterViewEngine(engines);
 }