У меня есть ошибка проверки правильности с int.Ошибка проверки MVC ASP.Net
У меня есть проверки на имя клиента:
if (String.IsNullOrEmpty(CustomerName))
yield return new RuleViolation("Customer Name Required", "CustomerName");
Теперь, если я хочу, чтобы добавить проверку для города, в этом случае у меня есть CityId, который получает сохраненное как тип Int, поэтому я не могу написать my if так же ... потому что нет метода int.IsNullOrEmpty. Предположим, пользователь не выбрал раскрывающийся список для города - это в основном экономия без какой-либо ценности.
Каков наилучший способ написать мой оператор проверки для int?
UPDATE: Вот пример того, что у меня есть для моей формы, на мой взгляд:
<% using (Html.BeginForm())
{%>
<fieldset>
<legend>Add a new customer</legend>
<p>
<label for="CustomerName">Customer Name:</label>
<%= Html.TextBox("CustomerName")%>
<%= Html.ValidationMessage("CustomerName", "*")%>
<label for="CityID">City:</label>
<%= Html.DropDownList("CityID", Model.Cities as SelectList, "Select City")%>
<%= Html.ValidationMessage("CityID", "*")%>
<input type="submit" value="Create New Customer" />
</p>
</fieldset>
<% } %>
и мой взгляд модель выглядит следующим образом:
public class CustomerFormViewModel
{
//Properties
public Customer Customer { get; set; }
public SelectList Cities { get; set; }
//Constructor
public CustomerFormViewModel(Customer customer)
{
CustomerRepository customerRepository = new CustomerRepository();
Customer = customer;
Cities = new SelectList(customerRepository.FindAllCities(), "CityID", "CityName");
}
}
Я ценю вашу помощь, хотя я не совсем понимаю, как дать «Пожалуйста, выберите» значение по умолчанию -1. Я могу заставить его сказать «Пожалуйста, выберите», но я не знаю, где указать, что это за значение. Я обновил свой вопрос с помощью кода, который, на мой взгляд, показывает, что у меня есть. – Ben
Когда вы создадите выпадающий список, он будет иметь текст и значение. Я всегда присваиваю значение как -1 и текст как «Пожалуйста, выберите». Когда форма отправляется, опубликованное значение будет содержать «-1» в качестве CityID в вашем примере. –