Проверка asp.net mvc IDataErrorInfo при использовании ViewModel - PullRequest
0 голосов
/ 20 июня 2010

Я использовал проверку IDataErrorInfo для моей модели. Но когда я использую эти классы модели внутри модели представления, проверка не происходит.

образец видовой модели ниже

public class CategoryViewModel    
{
    // Category class with IDataErrorInfo
    public Category category { set; get; }

    // Subcategory class with IDataErrorInfo
    public IList<SubCategory> subcategory { set; get; }
}

Теперь, если классы Category или Subcategory напрямую используются в качестве моделей для представления, проверка работает нормально. Но если используется CategoryViewModel, проверка не происходит.

1 Ответ

0 голосов
/ 20 июня 2010

IDataErrorInfo не работает с дочерними свойствами. Вам нужно будет реализовать этот интерфейс с помощью модели представления, к которой вы привязываете (CategoryViewModel). Это также считается плохой практикой . В качестве альтернативы вы можете посмотреть DataAnnotations или FluentValidation для более сложных сценариев проверки.

...