I am working on creating a c# design for following requirement. I am creating this for a fitness website.
I have an article (as Text) and a exercise (as Image or Videos) as the base entity. Now i have workouts, middle entity, (A workout is basically a set of excercises or articles to be performed in a instructed manner, it will have 2 or more than 2 base entities to make the workout) above these two entities.
Next I have routines, top entity, ( A routine is basically two or more workouts taken at a time.) A routine can span for days, weeks, months or year(if provided).
Now i was thinking
composite design pattern to implement in my application but not sure.
A little peek at database design to help with the c# design.
My database design would look similar to this one, check the image in answer.
Also a small example would help me.
I am looking for a design that would be helpful in developing the complex application(eventually it will become one sooner or later.) with ease and also is flexible and scalable.
My application work flow is simple first user adds base entity then the middle entity and then it creates top entity.