次のようなことができるようになりたいです。
<input name=@Model.SomeProperty (as the actual property name and not its value) value=@Model.SomeProperty type="text/>
モデル バインディングは引き続き機能しますが、Razor ヘルパーを使用する必要はありません。
次のようなことができるようになりたいです。
<input name=@Model.SomeProperty (as the actual property name and not its value) value=@Model.SomeProperty type="text/>
モデル バインディングは引き続き機能しますが、Razor ヘルパーを使用する必要はありません。
DisplayName を返すヘルパー メソッドを追加できます。
public static MvcHtmlString GetPropertyName<TModel, TProperty>( this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TProperty>> expression )
{
var metaData = ModelMetadata.FromLambdaExpression<TModel, TProperty>(expression, htmlHelper.ViewData);
string value = metaData.PropertyName ?? expressionHelper.GetExpressionText(expression);
return MvcHtmlString.Create(value);
}
そして、次を使用するだけです: @Html.GetPropertyName(m => m.SomeProperty)