У меня есть собственное расширение html-помощника, которое я использую таким образом
<%=Html.LocalizableLabelFor(model => model.Reason_ID, Register.PurchaseReason) %>
который объявлен так.
public static MvcHtmlString LocalizableLabelFor<T>(this HtmlHelper<T> helper, Expression<Func<T, object>> expr, string captionValue) where T : class {
return helper.LocalizableLabelFor(ExpressionHelper.GetExpressionText(expr), captionValue);
}
но когда я открою его в отладчике expr.Body.ToString () покажет мне Convert (model.Reason_ID). Но должен модель. Reason_ID.
Это большая проблема, потому что ExpressionHelper.GetExpressionText (expr) возвращает пустую строку.
Что за странная магия? Как от этого избавиться?