Проверка свойства bool, сопоставленного с int в MVC и Entity Framework - PullRequest
0 голосов
/ 18 февраля 2010

Я использую MVC 2 с Entity Framework (новейшей, поставляемой с VS2010 RC) и имею следующую проблему:

По причинам совместимости пример сущности User в базе данных содержит поле с именем «Disabled», которое является типом int со значениями 0 или 1 (для отображения в bool). В моих отображениях edmx это поле называется «отключено», и его методы получения и установки являются внутренними. Затем дополнительный частичный класс предоставляет это поле как свойство bool 'Disabled' для операций в коде:

public partial class User
{
    public virtual bool Disabled
    {
        get { return Convert.ToBoolean(this.disabled); }
        set { this.disabled = Convert.ToInt16(value); }
    }
}

Работает нормально, пока мне не нужно обновить пользователя с помощью обычной формы редактирования, затем TryUpdateModel завершается с сообщением:

Значение 'false' недопустимо для Disabled.

Я не знаю, почему MVC не отображает это правильно. Есть идеи? Спасибо

1 Ответ

1 голос
/ 18 февраля 2010

Я подозреваю, что все, что связано с отключенным типом, отличным от типа Отключенный, - это красная сельдь. Разве «false» - это строка, требующая анализа?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...