Пример #1
0
        public static string ToJson(UserControl userControl)
        {
            var cmps = new List <AbstractComponent>();

            foreach (var control in userControl.Controls)
            {
                var cmp = control as AbstractComponent;

                if (cmp != null)
                {
                    cmps.Add(cmp);
                }
                else if (control is UserControlLoader)
                {
                    cmps.AddRange(((UserControlLoader)control).Components);
                }
                else if (control is LiteralControl || control is Literal)
                {
                    continue;
                }
                else
                {
                    throw new Exception(string.Format(ServiceMessages.NON_LAYOUT_CONTROL, control.GetType().ToString()));
                }
            }

            return(ComponentLoader.ToJson(cmps));
        }
Пример #2
0
 public static string ToJson(string path, string userControlId)
 {
     return(ComponentLoader.ToJson(UserControlRenderer.LoadControl(path, userControlId)));
 }
Пример #3
0
 public static void Render(UserControl userControl)
 {
     CompressionUtils.GZipAndSend(ComponentLoader.ToJson(userControl));
 }
Пример #4
0
 public static void Render(IEnumerable <AbstractComponent> components)
 {
     CompressionUtils.GZipAndSend(ComponentLoader.ToJson(components));
 }