Я пытаюсь установить разные свойства в зависимости от доступа на мой взгляд. Ниже приведены два примера в моем коде:
1.
@Html.TextBoxFor(m => m.Name, new { @class = "form-control", id = "x", @readonly = User.HasAccess() ? "false" : "readonly" })
2.
@Html.DropDownListFor(m => m.Animal, Model.Animals, new { @class = "form-control", id = "x-dropDownList", disabled = User.HasAccess() ? "false" : "disabled" })
Я знаю несколько примеров, что метод работает, например, когда вы выписываете оператор if (хотя я думаю, что приведенный выше код является более удовлетворительным и легче читаемым, чем множественные операторы if везде), но те, у кого есть доступ, по-прежнему не могут писать в текстовом поле, даже если они должны это делать. Как пользователь с доступом, я не могу использовать текстовое поле так, как хочу, потому что оно все еще доступно только для чтения, хотя и не должно.
Поэтому мне интересно, нельзя ли вызывать методы (которые не являются функциями js или такими) внутри элемента @ html. Есть ли что-то, что я могу сделать, чтобы сделать эту работу, не делая ничего вне самого представления? (не меняйте метод и т. д.)
Я ценю вашу помощь!