Условная проверка по модели в MVC

У меня есть вид и модель, которую я использую как для редактирования, так и для вставки страницы для записи. Одно из бизнес-требований заключается в том, что определенное поле обязательно для редактирования, но не для нового. Первоначально, до того, как эта особенность была добавлена в список, у меня была такая модель:

[Required(ErrorMessage = "*")]
[Range(0.0, (double)decimal.MaxValue)]
[DisplayName("Cost")]
[DisplayFormat(DataFormatString = "{0:d}", ApplyFormatInEditMode = true)]
public decimal ProposedCost { get; set; }

Я хотел бы либо удалить обязательное свойство, если это форма вставки, либо добавить его, если форма редактирования. Какой подход лучше? Все мои другие проверки выполняются, как указано выше. Или я могу изменить состояние модели? Мысли?

РЕДАКТИРОВАТЬ

Что-то, что я должен уточнить, это то, что им по-прежнему разрешено вставлять стоимость на новые, просто не требуется.

Ответы на вопрос(4)

Ваш ответ на вопрос