static void Main(string[] args) { var cmd = new CreateQuestionCMD("Tema", "Ce trebuia sa mai fac pentru tema?", "LunguMirceaAdrian", new string[] { "homework" }); var questionResult = UnvalidatedQuestion.Create(cmd); var result = questionResult.Match( Succ: question => { ValidatedQuestion vq; Console.WriteLine("---------------Question is Valid-----------------\n"); Console.WriteLine(GetStringPresentQuestion(vq = new ValidatedQuestion(question))); return(vq); }, Fail: ex => { Console.WriteLine($"Question is Invalid. Reason: {ex.Message}"); return(null); } ); Console.WriteLine("-------------------------------------------------\n"); //Acum cu numar invalid de tags cmd = new CreateQuestionCMD("Tema", "Ce trebuia sa mai fac pentru tema?", "LunguMirceaAdrian", new string[] { "homework", "homework", "homework", "homework" }); questionResult = UnvalidatedQuestion.Create(cmd); questionResult.Match( Succ: question => { ValidatedQuestion vq; Console.WriteLine("---------------Question is Valid-----------------\n"); Console.WriteLine(GetStringPresentQuestion(vq = new ValidatedQuestion(question))); return(vq); }, Fail: ex => { Console.WriteLine($"Question is Invalid. Reason: {ex.Message}"); return(null); } ); Console.WriteLine("\n\n\n\n----------Si acum votam---------\n\n\n"); var rand = new Random(DateTime.Now.TimeOfDay.Ticks.ToString().GetHashCode()); for (int i = 0; i < rand.Next() % 30; i++) { result.AddVote(rand.Next() % 3 != 0? VoteEnum.Up : VoteEnum.Down); } Console.WriteLine(GetStringPresentQuestion(result)); Console.Read(); }
public ValidatedQuestion(UnvalidatedQuestion question) { Question = question.Question; Votes = new List <VoteEnum>(); }