I am new to ASP.NET and am trying to validate a textbox. Basically if user inputs less than 2 or a non number how can I get the error to display. The tutorial I am trying to follow is- http://www.asp.net/mvc/overview/older-versions-1/models-data/performing-simple-validation-cs I have my code below:

Create View

   <%= Html.ValidationSummary()%>
   <%= using (HtmlBeginForm()){%>
  <div class="half-col">
                <label for="Amount">Amount:</label>
                <%= Html.TextBox("Amount")%>
                <%= Html.ValidationMessage("Amount", "*")%>
  </div>

Create Controller

 [AcceptVerbs (HttpVerbs.Post)]
    public ActionResult Create([Bind(Exclude ="ID")] Charity productToCreate)
    {
        //Validation
        if (productToCreate.Amount < 2)
            ModelState.AddModelError("Amount, Greater than 2 please");

        return View(db.Donations.OrderByDescending(x => x.ID).Take(5).ToList());  //Display 5 recent records from table 
    }

Model:

    public class Charity
{
    public int ID { get; set; }
    public string DisplayName { get; set; }
    public DateTime Date { get; set; }
    public Double Amount { get; set; }
    public Double TaxBonus { get; set; }
    public String Comment { get; set; }
}

Error

 CS1501 No overload for method 'AddModelError' takes 1 CharitySite  

Related posts

Recent Viewed