예제 #1
0
        public override void RenderView(ViewContext viewContext)
        {
            var prevHandler = this.Context.Handler;
            var isOnAspx    = prevHandler is Page;

            this.Controls.Add(new Placeholder()
            {
                Key = key
            });
            if (!isOnAspx)
            {
                this.Controls.Add(new SitecoreForm());
            }
            using (var containerPage = new PageHolderContainerPage(this))
            {
                try
                {
                    if (!isOnAspx)
                    {
                        this.Context.Handler = containerPage;
                    }
                    if (global::Sitecore.Context.Page == null)
                    {
                        viewContext.Writer.WriteLine("<!-- Unable to use sitecoreplacholder outside sitecore -->");
                        return;
                    }
                    InitializePageContext(containerPage, viewContext);
                    RenderViewAndRestoreContentType(containerPage, viewContext);
                }
                finally
                {
                    this.Context.Handler = prevHandler;
                }
            }
        }
예제 #2
0
        public void RenderView(ViewContext viewContext, Rendering rendering)
        {
            var prevHandler = Context.Handler;

            using (var containerPage = new PageHolderContainerPage(this))
            {
                try
                {
                    Context.Handler = containerPage;

                    if (Sitecore.Context.Page == null)
                    {
                        viewContext.Writer.WriteLine("<!-- Unable to use sitecoreplacholder outside sitecore -->");

                        return;
                    }

                    InitializePageContext(containerPage, viewContext);
                    RenderViewAndRestoreContentType(containerPage, viewContext);
                }
                finally
                {
                    Context.Handler = prevHandler;
                }
            }
        }
		public override void RenderView(ViewContext viewContext)
		{
			var prevHandler = this.Context.Handler;
			var isOnAspx = prevHandler is Page;

			this.Controls.Add(new Placeholder() { Key = key });
			if (!isOnAspx)
			{
				this.Controls.Add(new SitecoreForm());
			}
			using (var containerPage = new PageHolderContainerPage(this))
			{
				try
				{
					if (!isOnAspx)
						this.Context.Handler = containerPage;
					if (global::Sitecore.Context.Page == null)
					{
						viewContext.Writer.WriteLine("<!-- Unable to use sitecoreplacholder outside sitecore -->");
						return;
					}
					InitializePageContext(containerPage, viewContext);
					RenderViewAndRestoreContentType(containerPage, viewContext);
				}
				finally
				{
					this.Context.Handler = prevHandler;
				}
			}
		}