private static List<FirmInstitutionOptionValue> GetOptionValueList(Guid idFirmInstitution, FirmInstitutionOptionValue optionValueRoot)
        {
            using (UpsilabEntities context = new UpsilabEntities())
            {
                var query = from optionValue in context.FirmInstitutionOptionValue.Include("FirmInstitutionOptionAttributeValue")
                            join option in context.Option on optionValue.idOption equals option.idOption
                            where optionValue.idFirmInstitution.Equals(idFirmInstitution)
                            where option.idParent.Value.Equals(optionValueRoot.idOption)
                            select optionValue;

                List<Data.Model.FirmInstitutionOptionValue> returnValue = new List<FirmInstitutionOptionValue>();
                foreach (var optionValue in query.ToList())
                {
                    context.LoadProperty(optionValue, "FirmInstitutionOptionAttributeValue");
                    returnValue.Add(optionValue);
                    returnValue.AddRange(GetOptionValueList(idFirmInstitution, optionValue));
                }

                return returnValue;
            }
        }
        public static List<FirmInstitutionAdviser> GetAdvisers(FirmInstitution _FirmInstitution, Boolean includeDeletedOrInactive = true)
        {
            List<FirmInstitutionAdviser> retVal = new List<FirmInstitutionAdviser>();

            using (UpsilabEntities retrieveContext = new UpsilabEntities())
            {
                var query = retrieveContext.FirmInstitutionAdviser
                    .Include("User").Include("FirmInstitution").Include("FirmInstitution1")
                    .Where(a => a.idFirmInstitution.Equals(_FirmInstitution.idFirmInstitution));

                if (!includeDeletedOrInactive)
                    query = query.Where(a => a.User.IsDeleted == false)
                        .Where(a => a.User.IsActive == true);

                foreach (var _adv in query)
                {
                    retrieveContext.LoadProperty(_adv, "User");
                    retVal.Add(_adv);
                }
            }

            return retVal;
        }