Html.TextBoxFor
нужен делегат, но вы передаете его в результате вызова String.Format
, когда String.Format
передается делегату.
Вам необходимо перевести вызов на String.Format
(или,Проще, ToString
) внутри делегат:
<%: Html.TextBoxFor(model => model.IssueDate.ToString("d"), new { @class= "invoiceDate"}) %>
Но, как вы заметили в своем комментарии:
Дает это исключение "Шаблоны можно использоватьтолько с доступом к полю, доступом к свойству, индексом одномерного массива или выражениями настраиваемого индексатора с одним параметром. "
Это потому, что Html.TextBoxFor
ожидает Expression<T>
и декодирует его, чтобы извлечь, к какому свойству / методу / полю вы обращаетесь.Затем он будет использовать эту информацию для последующего прямого доступа к члену.
Вы можете либо использовать Html.TextBox
, либо добавить свойство к типу модели, которое включает форматирование.