public Connects.Profiles.Service.DataContracts.PersonList GetDepartmentPeopleFromPersonId(int personId, int count)
        {
            //thisPerson is the current profile being viewed by a user or process.
            Connects.Profiles.Service.DataContracts.PersonList thisPerson;
            Connects.Profiles.Service.DataContracts.PersonList returnPeople;

            thisPerson = GetPersonFromPersonId(personId);

            Connects.Profiles.Service.DataContracts.QueryDefinition qd       = new Connects.Profiles.Service.DataContracts.QueryDefinition();
            Connects.Profiles.Service.DataContracts.Profiles        profiles = new Connects.Profiles.Service.DataContracts.Profiles();

            if (Convert.ToInt32(thisPerson.TotalCount) > 0)
            {
                if (thisPerson.Person[0].AffiliationList != null)
                {
                    if (thisPerson.Person[0].AffiliationList.Affiliation.Count > 0)
                    {
                        Connects.Profiles.Service.DataContracts.Affiliation     Affiliation = new Connects.Profiles.Service.DataContracts.Affiliation();
                        Connects.Profiles.Service.DataContracts.AffiliationList affList     = new Connects.Profiles.Service.DataContracts.AffiliationList();
                        Affiliation.DepartmentName  = new Connects.Profiles.Service.DataContracts.AffiliationDepartmentName();
                        Affiliation.InstitutionName = new Connects.Profiles.Service.DataContracts.AffiliationInstitutionName();

                        foreach (Connects.Profiles.Service.DataContracts.AffiliationPerson aff in thisPerson.Person[0].AffiliationList.Affiliation)
                        {
                            if (aff.Primary)
                            {
                                Affiliation.DepartmentName.Text  = aff.DepartmentName;
                                Affiliation.InstitutionName.Text = aff.InstitutionName;
                            }
                        }
                        affList.Affiliation = new List <Connects.Profiles.Service.DataContracts.Affiliation>();
                        affList.Affiliation.Add(Affiliation);

                        qd.AffiliationList = affList;

                        profiles.QueryDefinition = qd;

                        Connects.Profiles.Service.DataContracts.OutputOptions oo = new Connects.Profiles.Service.DataContracts.OutputOptions();
                        oo.SortType    = Connects.Profiles.Service.DataContracts.OutputOptionsSortType.QueryRelevance;
                        oo.StartRecord = "0";
                        oo.MaxRecords  = count.ToString();

                        profiles.OutputOptions = oo;


                        bool isSecure = System.Convert.ToBoolean(Connects.Profiles.Utility.ConfigUtil.GetConfigItem("IsSecure"));
                        profiles.Version = 2;
                        returnPeople     = ProfileSearch(profiles, isSecure);

                        //Filter out the current profile you are viewing.
                        if (Convert.ToInt32(thisPerson.ThisCount) > 0)
                        {
                            returnPeople.Person.RemoveAll(x => x.PersonID == thisPerson.Person[0].PersonID);
                        }

                        return(returnPeople);
                    }
                }
            }

            return(thisPerson);
        }
        public Connects.Profiles.Service.DataContracts.PersonList GetDepartmentPeopleFromPersonId(int personId, int count)
        {
            //thisPerson is the current profile being viewed by a user or process.
            Connects.Profiles.Service.DataContracts.PersonList thisPerson;
            Connects.Profiles.Service.DataContracts.PersonList returnPeople;

            thisPerson = GetPersonFromPersonId(personId);

            Connects.Profiles.Service.DataContracts.QueryDefinition qd = new Connects.Profiles.Service.DataContracts.QueryDefinition();
            Connects.Profiles.Service.DataContracts.Profiles profiles = new Connects.Profiles.Service.DataContracts.Profiles();

            if (Convert.ToInt32(thisPerson.TotalCount) > 0)
            {
                if (thisPerson.Person[0].AffiliationList != null)
                {
                    if (thisPerson.Person[0].AffiliationList.Affiliation.Count > 0)
                    {
                        Connects.Profiles.Service.DataContracts.Affiliation Affiliation = new Connects.Profiles.Service.DataContracts.Affiliation();
                        Connects.Profiles.Service.DataContracts.AffiliationList affList = new Connects.Profiles.Service.DataContracts.AffiliationList();
                        Affiliation.DepartmentName = new Connects.Profiles.Service.DataContracts.AffiliationDepartmentName();
                        Affiliation.InstitutionName = new Connects.Profiles.Service.DataContracts.AffiliationInstitutionName();

                        foreach (Connects.Profiles.Service.DataContracts.AffiliationPerson aff in thisPerson.Person[0].AffiliationList.Affiliation)
                        {
                            if (aff.Primary)
                            {
                                Affiliation.DepartmentName.Text = aff.DepartmentName;
                                Affiliation.InstitutionName.Text = aff.InstitutionName;

                            }
                        }
                        affList.Affiliation = new List<Connects.Profiles.Service.DataContracts.Affiliation>();
                        affList.Affiliation.Add(Affiliation);

                        qd.AffiliationList = affList;

                        profiles.QueryDefinition = qd;

                        Connects.Profiles.Service.DataContracts.OutputOptions oo = new Connects.Profiles.Service.DataContracts.OutputOptions();
                        oo.SortType = Connects.Profiles.Service.DataContracts.OutputOptionsSortType.QueryRelevance;
                        oo.StartRecord = "0";
                        oo.MaxRecords = count.ToString();

                        profiles.OutputOptions = oo;

                        bool isSecure = System.Convert.ToBoolean(Connects.Profiles.Utility.ConfigUtil.GetConfigItem("IsSecure"));
                        profiles.Version = 2;
                        returnPeople = ProfileSearch(profiles, isSecure);

                        //Filter out the current profile you are viewing.
                        if (Convert.ToInt32(thisPerson.ThisCount) > 0)
                        {
                            returnPeople.Person.RemoveAll(x => x.PersonID == thisPerson.Person[0].PersonID);
                        }

                        return returnPeople;
                    }
                }
            }

            return thisPerson;
        }