Проверка не будет работать - PullRequest
0 голосов
/ 25 октября 2018

Я добавил проверку в мою модель, но когда я пытаюсь применить ее в своем контроллере, он, похоже, не обнаруживает, что код недействителен, и переходит в неверное представление.

Я думаю, что по какой-то причине он не смотрит на объект и обходит это, но я не могу найти способ заставить его проверить меня.

Может ли кто-нибудь мне помочь?

Модель:

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;

namespace messageBoard.Models
{
public class Messages
{
    [Required]
    [StringLength(250)]
    public string Sender { get; set; }
    [Required]
    [StringLength(250)]
    public string Receiver { get; set; }
    public int Year { get; set; }
    public string Form { get; set; }
    [Required]
    public DateTime StartDate { get; set; }
    [Required]
    public DateTime Expiry { get; set; }
    [Required]
    [StringLength(250)]
    public string Title { get; set; }
    [Required]
    public string Message { get; set; }

}
}

Контроллер:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using TLA_Message_Board.Models;

namespace TLA_Message_Board.Controllers
{
public class MessagesController : Controller
{
    // GET: Messages
    public ActionResult Load()
    {
        Messages obj = new Messages {
            Sender = "Ross McKenzie",
            Receiver = "Noah McKenzie",
            Year = 9,
            StartDate = new DateTime(2018, 06, 28),
            Expiry = new DateTime(2018, 06, 29),
            Title = "Title Test",
            Message = "This is the first message for the test of the internal message board."
        };
        return View("Messages",obj);

    }

    public ActionResult Enter()
    {

        return View("EnterMessages");
    }
    public ActionResult Submit()
    {

        Messages obj = new Messages();
        obj.Sender = Request.Form["Sender"];
        obj.Receiver = Request.Form["Receiver"];

        string year = Request.Form["Year"];
        obj.Year = Int32.Parse(year);

        string start = Request.Form["StartDate"];
        DateTime startParse = DateTime.Parse(start);
        obj.StartDate = startParse;

        string expiry = Request.Form["Expiry"];
        DateTime expiryParse = DateTime.Parse(expiry);
        obj.StartDate = expiryParse;

        obj.Title = Request.Form["Title"];
        obj.Message = Request.Form["Message"];

         if(ModelState.IsValid)
        {
            return View("Messages", obj);
        }
        else
        {
            return View("EnterMessages");
        }
    }
}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...