I'm gonna cut to the chase. I'm creating a Survey platform, it has 3 models.
Model Survey, it has Many SurveyQuestion which has many SurveyAnswer. (I can insert all of the values of these models but I dont think it is needed)
public class SurveyAnswer
{
    [Key]
    public int Id { get; set; }
    public string Value { get; set; }
    public string SubmittedBy { get; set; }
    public int SurveyId { get; set; }
    public int QuestionId { get; set; }
    public virtual Survey Survey { get; set; }
    public virtual SurveyQuestion Question { get; set; }
    public string Comment { get; set; }
}
Now a problem I'm having is once someone created a survey and another person is starting it, he answers and that's it. How do I show that the next time he comes to an index page? How do I show that "you already submitted this survey"? Do I do that in Controller or in View? I would prefer to that in this action currently (it's a menu for all ongoing surveys).
    [HttpGet]
    public ActionResult Menu()
    {
        var survey = Mapper.Map<IEnumerable<Survey>, IEnumerable<SurveyViewModel>>(_unitOfWork.SurveyRepository.Get());
        return View(survey.ToList());
    }
