Esempio n. 1
0
        //Returns a List of Members next to the memberID based on the maximum distance
        public static List<DistancedMember> doDistanceSearch(double distance, Int64 mitgliedID)
        {
            List<DistancedMember> ratedMembers = new List<DistancedMember>();
            using (DBEntities dbConnection = new DBEntities())
            {
                List<Nullable<Int64>> allMitglieder = dbConnection.getNotFriends(mitgliedID).ToList();

                foreach (Int64 currentMitglied in allMitglieder)
                {
                    double distanceCurrentUser = GeoCalculator.calculateDistanceBetweenUsers(mitgliedID, currentMitglied);
                    if(distanceCurrentUser != -1)
                    {
                        if (distanceCurrentUser <= distance)
                        {
                            Mitglied currentMitgliedObject = Datareader.getMitgliedByID(currentMitglied);
                            ratedMembers.Add(new DistancedMember(currentMitgliedObject, distanceCurrentUser));
                        }
                        else
                        {
                        }
                    }
                    else
                    {

                    }
                }

                return ratedMembers.OrderBy(x => x.distance).ToList();
            }
        }
Esempio n. 2
0
        //2. retuns a Mitglieder List of Persons that the member does not know
        public static List<Ratedmember> getRatableMember(List<Nullable<long>> myFriends, Int64 mitgliedID)
        {
            using (DBEntities dbConnection = new DBEntities())
            {
                List<Ratedmember> ratableMember = new List<Ratedmember>();
                List<Nullable<Int64>> nU = dbConnection.getNotFriends(mitgliedID).ToList();

                foreach (Int64 currentUSer in nU)
                {
                    ratableMember.Add(new Ratedmember(dbConnection.Mitglied.Find(currentUSer)));
                }

                //foreach(getMitgliederWithOutPicture_Result currentMitglied in dbConnection.getMitgliederWithOutPicture())
                //{
                //    bool isAlreadyFriendFriend = false;
                //    foreach (Nullable<long> currentFriend in myFriends)
                //    {
                //        if (currentFriend.Equals(currentMitglied.mitgliedID))
                //        {
                //            //do nothing because you dont need to rate a friend again
                //            //ratableMember.Add(new Ratedmember(currentMitglied));
                //            isAlreadyFriendFriend = true;
                //        }
                //        else
                //        {
                //            //ratableMember.Add(new Ratedmember(currentMitglied));
                //        }
                //    }
                //    if (isAlreadyFriendFriend == false)
                //    {
                //        ratableMember.Add(new Ratedmember(currentMitglied));
                //    }
                //    else
                //    {
                //    }
                //}
                return ratableMember;
            }
        }