Hello, I am in the process of developing a form that will ask a series of boolean questions, based on the answer we will provide the ability to upload documentation. My question is that if I made an entity (specialization of System.File) and made the attributes QuestionID, user, and Project ID (questions are related to the project) would this be the best way to manage all of the document uploads, or should I be making isolated entities based on the questions? The main need is to be able to select a given user as an admin and see all of the documents that were uploaded in relation to the question(s). Any design recommendations would be appreciated.
I guess it depends a bit on how you modeled questions in your domain model. I would say the association to your question object is key for later retrieval. I would stick to one specialization of filedocument (eg QuestionAttachment) if your only requirement is seeing all documents related to a question. If necessary use an additional attribute to define subtypes.