/// <summary>
        /// Выбираем пользователей, которые подписаны на портфель, и отписываем их от портфеля
        /// </summary>
        /// <param name="id">уникальный идентификатор портфеля</param>
        /// <returns></returns>
        private static bool UnsubscribeSubscribersFromPortfolio(int id)
        {
            var errorsUnsubscribe = new List <string>();

            try
            {
                using (var ctx = DatabaseContext.Instance.Make())
                {
                    var logins = ctx.USER_TOP_PORTFOLIO.Where(x => x.Portfolio == id).Select(x => x.PLATFORM_USER.Login);

                    var proxy = new TradeSharpServerTrade(EmptyTradeSharpCallbackReceiver.Instance).proxy;
                    Logger.Info("Начинаем отписывать пользователей от портфеля id = " + id);
                    foreach (var login in logins)
                    {
                        var result = proxy.UnsubscribePortfolio(ProtectedOperationContext.MakeServerSideContext(), login, false, true);
                        if (result != RequestStatus.OK)
                        {
                            errorsUnsubscribe.Add(login);
                        }
                    }
                }
                if (errorsUnsubscribe.Count > 0)
                {
                    Logger.Error(string.Format("От портфеля {0} не удалось отписать следующих пользователей: {1}", id, string.Join(Environment.NewLine, errorsUnsubscribe)));
                    return(false);
                }
                return(true);
            }
            catch (Exception ex)
            {
                Logger.Error("UnsubscribeOnPortfolio()", ex);
                return(false);
            }
        }
        /// <summary>
        /// Выбираем пользователей, которые подписаны на портфель, и отписываем их от портфеля
        /// </summary>
        /// <param name="id">уникальный идентификатор портфеля</param>
        /// <returns></returns>
        private static bool UnsubscribeSubscribersFromPortfolio(int id)
        {
            var errorsUnsubscribe = new List<string>();
            try
            {
                using (var ctx = DatabaseContext.Instance.Make())
                {
                    var logins = ctx.USER_TOP_PORTFOLIO.Where(x => x.Portfolio == id).Select(x => x.PLATFORM_USER.Login);

                    var proxy = new TradeSharpServerTrade(EmptyTradeSharpCallbackReceiver.Instance).proxy;
                    Logger.Info("Начинаем отписывать пользователей от портфеля id = " + id);
                    foreach (var login in logins)
                    {
                        var result = proxy.UnsubscribePortfolio(ProtectedOperationContext.MakeServerSideContext(), login, false, true);
                        if (result != RequestStatus.OK) errorsUnsubscribe.Add(login);
                    }
                }
                if (errorsUnsubscribe.Count > 0)
                {
                    Logger.Error(string.Format("От портфеля {0} не удалось отписать следующих пользователей: {1}", id, string.Join(Environment.NewLine, errorsUnsubscribe)));
                    return false;
                }
                return true;
            }
            catch (Exception ex)
            {
                Logger.Error("UnsubscribeOnPortfolio()", ex);
                return false;
            }
        }