public static ICreateIntrebareResult CreateNewQuestion(CreateIntrebareCmd createQuestion) { if (string.IsNullOrWhiteSpace(createQuestion.Descriere)) { var errors = new List <string>() { "Nu ati adaugat descriere corecta" }; return(new IntrebareValidationFailed(errors)); } if (string.IsNullOrEmpty(createQuestion.Titlu)) { return(new IntrebareaNuEPostata("Adaugati titlu!")); } if (string.IsNullOrEmpty(createQuestion.Tag)) { return(new IntrebareaNuEPostata("Adaugati tag!")); } var questionId = Guid.NewGuid(); var result = new IntrebarePostata(intrebareId, createQuestion.Descriere); return(result); }
static void Main(string[] args) { var cmd = new CreateIntrebareCmd("Titlu1", "Descriereeee", "Taag1"); var result = CreateIntrebare(cmd); result.Match(ProcessQuetionPosted, ProcessQuestionNotPosted, ProcessInvalidQuestion); Console.ReadLine(); }