Beispiel #1
0
        public WeightReturner CheckWeight(List <RecommendationWeight> weights, int CategoryID, int GenreID)
        {
            WeightReturner weightReturner = new WeightReturner();

            for (int i = 0; i < weights.Count; i++)
            {
                if (CategoryID == 1 && weights[i].CategoryID == CategoryID)
                {
                    weightReturner.hasCategory = true;
                    if (GenreID != 0)
                    {
                        weightReturner.hasGenre = true;
                    }
                    else
                    {
                        weightReturner.hasGenre = false;
                    }
                    weightReturner.ArrayLocation = i;
                    return(weightReturner);
                }
                else if (weights[i].CategoryID == CategoryID)
                {
                    weightReturner.hasCategory   = true;
                    weightReturner.hasGenre      = false;
                    weightReturner.ArrayLocation = i;
                    return(weightReturner);
                }
            }
            weightReturner.hasCategory = false;
            return(weightReturner);
        }
Beispiel #2
0
        public List <RecommendationWeight> Weights(List <UserHistory> History)
        {
            List <RecommendationWeight> weightList = new List <RecommendationWeight>();
            WeightReturner weightReturner          = new WeightReturner();

            for (int i = 0; i < History.Count; i++)
            {
                weightReturner = CheckWeight(weightList, History[i].CategoryID, History[i].GenreID);
                if (weightReturner.hasCategory && weightReturner.hasGenre)
                {
                    weightList[weightReturner.ArrayLocation].Weight++;
                }
                else if (weightReturner.hasCategory && History[i].CategoryID == 1 && !weightReturner.hasGenre)
                {
                    RecommendationWeight recommendationWeight = new RecommendationWeight {
                        CategoryID = History[i].CategoryID, Weight = 1, GenreID = History[i].GenreID
                    };
                    weightList.Add(recommendationWeight);
                }
                else if (weightReturner.hasCategory && !weightReturner.hasGenre)
                {
                    weightList[weightReturner.ArrayLocation].Weight++;
                }
                else
                {
                    RecommendationWeight recommendationWeight = new RecommendationWeight {
                        CategoryID = History[i].CategoryID, Weight = 1, GenreID = 0
                    };
                    weightList.Add(recommendationWeight);
                }
            }
            return(weightList);
        }