Пример #1
0
 private CachedView CheckCachedSharedViewValidity(SharedViewRole role, string sharedViewName, CachedView viewData)
 {
     if (_viewLoader.DoesNeedToReloadSharedView(role, sharedViewName, viewData.LoadTimestamp))
     {
         viewData = null;
     }
     return(viewData);
 }
Пример #2
0
 private CachedView LoadSharedView(SharedViewRole role, string sharedViewName, string viewKey, CachedView viewData)
 {
     viewData = new CachedView();
     using (var viewText = _viewLoader.LoadSharedViewText(role, sharedViewName))
     {
         viewData.ViewType = PrepareView(viewText, viewKey);
     }
     viewData.LoadTimestamp = DateTime.UtcNow;
     return(viewData);
 }
Пример #3
0
        private ViewBase FindAndExecuteSharedView(SharedViewRole role, string sharedViewName, TextWriter output, ControllerBase controller, ViewBase parentView, Stream bodyContent, Dictionary <string, Action> sections)
        {
            var        viewKey = "/#" + sharedViewName;
            CachedView viewData;

            viewData = GetCachedView(viewKey);
            if (viewData != null)
            {
                viewData = CheckCachedSharedViewValidity(role, sharedViewName, viewData);
            }
            if (viewData == null)
            {
                viewData = LoadSharedView(role, sharedViewName, viewKey, viewData);
                SaveViewInCache(viewKey, viewData);
            }
            var view = (ViewBase)Activator.CreateInstance(viewData.ViewType);

            InitializeView(controller, parentView, view, output, new RenderContext {
                BodyContent = bodyContent, Sections = sections
            });
            view.Execute();
            return(view);
        }
Пример #4
0
 public System.IO.TextReader LoadSharedViewText(SharedViewRole role, string sharedViewName)
 {
     return(new System.IO.StringReader(_views[sharedViewName]));
 }
Пример #5
0
 public bool DoesNeedToReloadSharedView(SharedViewRole role, string sharedViewName, DateTime previousLoadTime)
 {
     return(false);
 }
Пример #6
0
 private CachedView LoadSharedView(SharedViewRole role, string sharedViewName, string viewKey, CachedView viewData)
 {
     viewData = new CachedView();
     using (var viewText = _viewLoader.LoadSharedViewText(role, sharedViewName))
     {
         viewData.ViewType = PrepareView(viewText, viewKey);
     }
     viewData.LoadTimestamp = DateTime.UtcNow;
     return viewData;
 }
Пример #7
0
 private ViewBase FindAndExecuteSharedView(SharedViewRole role, string sharedViewName, TextWriter output, ControllerBase controller, ViewBase parentView, Stream bodyContent, Dictionary<string,Action> sections)
 {
     var viewKey = "/#" + sharedViewName;
     CachedView viewData;
     viewData = GetCachedView(viewKey);
     if (viewData != null)
     {
         viewData = CheckCachedSharedViewValidity(role, sharedViewName, viewData);
     }
     if (viewData == null)
     {
         viewData = LoadSharedView(role, sharedViewName, viewKey, viewData);
         SaveViewInCache(viewKey, viewData);
     }
     var view = (ViewBase)Activator.CreateInstance(viewData.ViewType);
     InitializeView(controller, parentView, view, output, new RenderContext { BodyContent = bodyContent,Sections = sections });
     view.Execute();
     return view;
 }
Пример #8
0
 private CachedView CheckCachedSharedViewValidity(SharedViewRole role, string sharedViewName, CachedView viewData)
 {
     if (_viewLoader.DoesNeedToReloadSharedView(role, sharedViewName, viewData.LoadTimestamp))
     {
         viewData = null;
     }
     return viewData;
 }
Пример #9
0
        public TextReader LoadSharedViewText(SharedViewRole role, string sharedViewName)
        {
            var filename = GetSharedFileName(sharedViewName);

            return(new StreamReader(filename));
        }
Пример #10
0
        public bool DoesNeedToReloadSharedView(SharedViewRole role, string sharedViewName, DateTime previousLoadTime)
        {
            var filename = GetSharedFileName(sharedViewName);

            return(new FileInfo(filename).LastWriteTimeUtc > previousLoadTime);
        }
Пример #11
0
 public System.IO.TextReader LoadSharedViewText(SharedViewRole role, string sharedViewName)
 {
     return new System.IO.StringReader(_views[sharedViewName]);
 }
Пример #12
0
 public bool DoesNeedToReloadSharedView(SharedViewRole role, string sharedViewName, DateTime previousLoadTime)
 {
     return false;
 }
Пример #13
0
 public TextReader LoadSharedViewText(SharedViewRole role, string sharedViewName)
 {
     var filename = GetSharedFileName(sharedViewName);
     return new StreamReader(filename);
 }
Пример #14
0
 public bool DoesNeedToReloadSharedView(SharedViewRole role, string sharedViewName, DateTime previousLoadTime)
 {
     var filename = GetSharedFileName(sharedViewName);
     return new FileInfo(filename).LastWriteTimeUtc > previousLoadTime;
 }