Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8846667
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 14, 20262026-06-14T12:03:24+00:00 2026-06-14T12:03:24+00:00

I am creating a system where I have something like a manual recommendation system.

  • 0

I am creating a system where I have something like a “manual recommendation system”. It works like this: if a user thinks something inside the system is interesting, it can “recommend” this content. This content will then be recommended to all the user’s followers (they will appear in their “wall”). (I don’t care about who visited or any kind of automation, for me it is only important that the user is able to share comments by clicking in a button).

Let’s say a user I follow recommends a blog post, a link to this post will appear in my “wall”. This link contains the post title, description and so on.
He could also recommend videos, photos and users profiles and so on.

For each kind of content which is recommended, I will have a different layout and different information will be displayed, and here is where my problem lies:

I am having some issues creating the approach so solve this problem: How can I keep track of what was recommended, keep the information updated (if the post title was changed, it should change in the recommendation) and keep my solution clean?

These are the approaches I’ve though and the reasons I don’t like them:

  • Create a “general” table, called Recommendation. This would have recommendation title, recommendationInfo_1, recommendationInfo_2, recommendationInfo_3,…, recommendationInfo_N.
    This is a nice approach because it would be easy to retrieve and all recommendation types would be able to use the same columns.
    I didn’t like it because it doesn’t keep the information updated (it is somehow complex to do that, I would have to check for possible recommendations every time an object is updated) and it looks messy.

  • Create a recommendation table and a “value pair table”. The recommendation table would have the fields which are common to all of the recommendation types, and the key value table would have specific information for each recommendation type.
    I didn’t like it because it has the same problems maintaining the fields updated, this second table looks messy for me, and it would not be as simple to perform queries to retrieve all kinds of recommendations at once.

  • Create a recommendation table which contains only the recommendation ID, recommendation Type and content id. The table looks cleaner, which is a plus point, and it also solves the updated information issue.
    The problem here is: I’m afraid the retrieval query will be very complex, I will have to perform N “outer join”, being N the number of content types I have and my select clause can grow pretty fast due to the different kinds of information coming from different content types.

Do you have any ideas/articles/design patterns that could help me?

ps: I don’t know if this is important, but I’m using asp.net and msssql

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-14T12:03:26+00:00Added an answer on June 14, 2026 at 12:03 pm

    So your users can recommend photos, videos, cars, bananas, etc. Make a table which has all these things listed. So all items that a user may recommend are in the Thing or Object table, with information on what kind of thing it is and where the additional information is.

    When a user recommends a thing, you simply create a relation between the user and the thing. The Recommendation table would thus have userId, thingId and maybe a timestamp to indicate when the thing was recommended.

    In your program, you would make a superclass Thing with subclasses Photo, Video, Car, Banana. Maybe all your things implement some interface, so that you can call thing.getName() no matter what kind of thing it is.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have something like this: private void DoSomething() { System.Console.WriteLine(Creating Foo); Foo result =
BACKGROUND I'm creating an AJAX chat system. It looks something like this: Mike -
I have this webdav code thats creating folders in SharePoint: HttpWebRequest request = (System.Net.HttpWebRequest)HttpWebRequest.Create(folderAddress);
I have a div set up something like this: <div id=test> <p>Hello</p> <p style=display:
I have 2 custom fields in my WordPress system when creating new posts. One
i am creating a process using System.DIagnostics.Process in c# i have created a class
I am creating a simple messaging system in WCF and have implemented a minimal
I have some code using a System.Transactions.TransactionScope , that creating a new instance of
I'm creating an air traffic control system. I have a class called plane that
Folks, We have been using OpenXml APIs found in System.IO.Packaging for creating a package

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.