Exemple #1
0
        /// <summary>
        /// Получить список пар канал/представление по ид. представления
        /// </summary>
        public static List <CnlViewPair> GetCnlViewPairsByView(
            int viewID, DataAccess dataAccess, ViewCache viewCache, UserViews userViews)
        {
            BaseView view = null;

            if (viewID > 0)
            {
                Type viewType = userViews.GetViewType(viewID);
                view = viewCache.GetView(viewType, viewID);
            }

            if (view == null)
            {
                return(null);
            }
            else
            {
                List <CnlViewPair> cnlsByView = new List <CnlViewPair>();
                foreach (int cnlNum in view.CnlList)
                {
                    CnlViewPair pair = new CnlViewPair(cnlNum, 0);
                    pair.FillInfo(dataAccess.GetCnlProps(cnlNum), null);
                    cnlsByView.Add(pair);
                }
                return(cnlsByView);
            }
        }
Exemple #2
0
        /// <summary>
        /// Получить представление по идентификатору, если тип представления заранее не известен
        /// </summary>
        /// <remarks>Если тип представления известен, эффективнее использовать ViewCache.GetView</remarks>
        public BaseView GetView(int viewID, bool throwOnError = false, bool allowUndefView = false)
        {
            if (viewID <= 0 && allowUndefView)
            {
                return(null);
            }

            Type viewType = GetViewType(viewID);

            return(viewCache.GetView(viewType, viewID, throwOnError));
        }
Exemple #3
0
        /// <summary>
        /// Получить представление по идентификатору
        /// </summary>
        protected BaseView GetView(int viewID)
        {
#if DEBUG
            return(null);
#else
            if (userData == null)
            {
                // получение представления из кеша для WCF-сервиса
                return(viewCache.GetViewFromCache(viewID, true));
            }
            else
            {
                // получение представления из кеша или от сервера для веб-формы
                Type viewType = userData.UserViews.GetViewType(viewID);
                return(viewCache.GetView(viewType, viewID, true));
            }
#endif
        }