コード例 #1
0
 public virtual void Initialize(AspViewEngine newViewEngine, TextWriter output, IEngineContext newContext,
                                IController newController, IControllerContext newControllerContext, IDictionary parentProperties)
 {
     if (initialized)
     {
         throw new ApplicationException("Sorry, but a view instance cannot be initialized twice");
     }
     initialized       = true;
     viewEngine        = newViewEngine;
     OutputWriter      = output;
     Context           = newContext;
     Controller        = newController;
     controllerContext = newControllerContext;
     if (parentProperties == null)
     {
         Properties = ExtractProperties();
     }
     else
     {
         Properties = new ViewPropertiesDictionary(parentProperties);
     }
     if (newContext != null && newContext.Services != null && newContext.Services.DictionaryAdapterFactory != null)
     {
         dictionaryAdapterFactory = newContext.Services.DictionaryAdapterFactory;
     }
     else
     {
         dictionaryAdapterFactory = new DictionaryAdapterFactory();
     }
     outputWriters = new Stack <TextWriter>();
     viewFilters   = new Stack <IViewFilter>();
 }
コード例 #2
0
 public AspViewBase(AspViewEngine viewEngine, TextWriter output, IRailsEngineContext context, Controller controller)
 {
     _viewEngine   = viewEngine;
     _outputWriter = output;
     _context      = context;
     _controller   = controller;
     InitProperties(context, controller);
 }
コード例 #3
0
        private List <AspViewFile> GetViewFiles(string siteRoot)
        {
            List <AspViewFile> files          = new List <AspViewFile>();
            string             viewsDirectory = Path.Combine(siteRoot, "Views");

            string[] fileNames = Directory.GetFiles(viewsDirectory, "*.aspx", SearchOption.AllDirectories);
            foreach (string fileName in fileNames)
            {
                AspViewFile file = new AspViewFile();
                file.ViewName   = fileName.Replace(viewsDirectory, "");
                file.ClassName  = AspViewEngine.GetClassName(file.ViewName);
                file.ViewSource = ReadFile(fileName);
                files.Add(file);
            }
            return(files);
        }
コード例 #4
0
 public virtual void Initialize(AspViewEngine newViewEngine, TextWriter output, IRailsEngineContext newContext, Controller newController)
 {
     if (initialized)
     {
         throw new ApplicationException("Sorry, but a view instance cannot be initialized twice");
     }
     initialized  = true;
     viewEngine   = newViewEngine;
     outputWriter = output;
     context      = newContext;
     controller   = newController;
     InitProperties();
     dictionaryAdapterFactory = new DictionaryAdapterFactory();
     outputWriters            = new Stack <TextWriter>();
     viewFilters = new Stack <IViewFilter>();
 }
コード例 #5
0
ファイル: AspViewBase.cs プロジェクト: mgagne-atman/Projects
		public virtual void Initialize(AspViewEngine newViewEngine, TextWriter output, IEngineContext newContext,
		                               IController newController, IControllerContext newControllerContext)
		{
			if (initialized)
				throw new ApplicationException("Sorry, but a view instance cannot be initialized twice");
			initialized = true;
			viewEngine = newViewEngine;
			outputWriter = output;
			context = newContext;
			controller = newController;
			controllerContext = newControllerContext;
			InitProperties();
			dictionaryAdapterFactory = new DictionaryAdapterFactory();
			outputWriters = new Stack<TextWriter>();
			viewFilters = new Stack<IViewFilter>();
		}
コード例 #6
0
 public override void Initialize(AspViewEngine viewEngine, TextWriter output, IEngineContext context, IController controller, IControllerContext controllerContext)
 {
     base.Initialize(viewEngine, output, context, controller, controllerContext);
     view = dictionaryAdapterFactory.GetAdapter <IView>((IDictionary)Properties);
 }
コード例 #7
0
ファイル: AspViewBase.cs プロジェクト: mgagne-atman/Projects
 public AspViewBase(AspViewEngine viewEngine, TextWriter output, IRailsEngineContext context, Controller controller)
 {
     _viewEngine = viewEngine;
     _outputWriter = output;
     _context = context;
     _controller = controller;
     InitProperties(context, controller);
 }
コード例 #8
0
 void PopCurrentView()
 {
     AspViewEngine.GetViewsStack(Context).Pop();
 }
コード例 #9
0
 void PushCurrentView()
 {
     AspViewEngine.GetViewsStack(Context).Push(this);
 }