/// <summary> /// Finds view and returns result /// </summary> /// <param name="controllerContext"></param> /// <param name="viewName"></param> /// <param name="masterName"></param> /// <param name="useCache">Ignored</param> /// <param name="isPartial"></param> /// <returns></returns> ViewEngineResult GetView(ControllerContext controllerContext, string viewName, string masterName, bool useCache, bool isPartial) { if (_settings.Conventions.Count == 0) { throw new MissingViewConventionsException(); } List <string> searched = new List <string>(); foreach (var convention in _settings.Conventions) { if (!convention.Match(controllerContext, viewName)) { continue; } var viewPath = convention.GetViewPath(controllerContext, viewName); if (!FileExists(viewPath)) { searched.Add(viewPath + " [FlexibleViewEngine]"); continue; } var masterPath = ""; if (!isPartial) { masterPath = convention.GetMasterPath(controllerContext, masterName); if (!masterPath.IsNullOrEmpty(true) && !FileExists(masterPath)) { searched.Add(viewPath + " [FlexibleViewEngine]"); continue; } } var factory = _settings.FindViewFactoryByExtension(GetFileExtension(viewPath)); if (factory == null) { searched.Add(viewPath + " [FlexibleViewEngine]"); continue; } var settings = new ViewCreationData(controllerContext, viewPath, masterPath); var view = isPartial?factory.CreatePartial(settings):factory.Create(settings); return(new ViewEngineResult(view, this)); } return(new ViewEngineResult(searched.ToArray())); }
public IView CreatePartial(ViewCreationData settings) { return new RazorView(settings.Context, settings.ViewPath, null, false, _extensions); }
public IView Create(ViewCreationData settings) { return new RazorView(settings.Context, settings.ViewPath,settings.MasterPath, true,_extensions); }
/// <summary> /// Finds view and returns result /// </summary> /// <param name="controllerContext"></param> /// <param name="viewName"></param> /// <param name="masterName"></param> /// <param name="useCache">Ignored</param> /// <param name="isPartial"></param> /// <returns></returns> ViewEngineResult GetView(ControllerContext controllerContext, string viewName, string masterName, bool useCache,bool isPartial) { if (_settings.Conventions.Count == 0) { throw new MissingViewConventionsException(); } List<string> searched = new List<string>(); foreach (var convention in _settings.Conventions) { if (!convention.Match(controllerContext, viewName)) { continue; } var viewPath = convention.GetViewPath(controllerContext, viewName); if (!FileExists(viewPath)) { searched.Add(viewPath+" [FlexibleViewEngine]"); continue; } var masterPath = ""; if (!isPartial) { masterPath = convention.GetMasterPath(controllerContext, masterName); if (!masterPath.IsNullOrEmpty(true) && !FileExists(masterPath)) { searched.Add(viewPath + " [FlexibleViewEngine]"); continue; } } var factory = _settings.FindViewFactoryByExtension(GetFileExtension(viewPath)); if (factory == null) { searched.Add(viewPath + " [FlexibleViewEngine]"); continue; } var settings = new ViewCreationData(controllerContext, viewPath, masterPath); var view = isPartial?factory.CreatePartial(settings):factory.Create(settings); return new ViewEngineResult(view, this); } return new ViewEngineResult(searched.ToArray()); }
public IView CreatePartial(ViewCreationData settings) { return(new RazorView(settings.Context, settings.ViewPath, null, false, _extensions)); }
public IView Create(ViewCreationData settings) { return(new RazorView(settings.Context, settings.ViewPath, settings.MasterPath, true, _extensions)); }