Я добавляю xVal в приложение NerdDinner - пока что все хорошо, я получаю проверку на стороне клиента с jQuery.validate в одной строке, что действительно прекрасно. Но я не могу заставить xVal проверить сложный объект. Скажем, у меня есть объект Dinner, который выглядит так:
public class Dinner
{
[Required]
public string Title { get; set; }
}
и другой объект, контейнер:
public class DinnerWrapper
{
public Dinner Dinner { get; set; }
public string Name { get; set; }
}
Если мой контроллер передает Dinner
в View, я могу заставить xVal выполнить проверку на стороне клиента в конце моей формы, например:
<% using (Html.BeginForm())
{ %>
<fieldset>
<p>
<label for="Title">
Dinner Title:</label>
<%= Html.TextBox("Title") %>
<%= Html.ValidationMessage("Title", "*") %>
</p>
</fieldset>
<% } %>
<%=Html.ClientSideValidation<Dinner>()%>
Но я не могу заставить его работать, когда я передаю DinnerWrapper - xVal не выполняет проверку на стороне клиента со следующей настройкой:
<% using (Html.BeginForm())
{ %>
<fieldset>
<p>
<label for="Title">
Dinner Title:</label>
<%= Html.TextBox("Title", Model.Dinner.Title) %>
<%= Html.ValidationMessage("Title", "*") %>
</p>
</fieldset>
<% } %>
<%=Html.ClientSideValidation<DinnerWrapper>()%>
Есть идеи? До сих пор я успешно интегрировал xVal (и NHaml) в приложение NerdDinner, но, похоже, у меня возникли препятствия.