ASP.Net MVC 4如何传递模型属性到视图

本文关键字:模型 属性 视图 何传递 Net MVC ASP | 更新日期: 2023-09-27 18:12:43

第一个例子是我的代码。model中的属性:

[Display(Name = "My Name for Quantity")]
public int Quantity { get; set; }  

然后我从控制器发送一些数据到视图,在视图中我使用:

Html.DisplayNameFor(model => model.Quantity)

从上面这个我得到"我的名字为数量"。

问题是。如何获得原始属性名称(数量)和属性类型(int)?

ASP.Net MVC 4如何传递模型属性到视图

您可能希望编写这样的方法:

public static string GetPropertyName<T>(Expression<Func<T>> propertyExpression)
{
    return (propertyExpression.Body as MemberExpression).Member.Name;
}

要使用它,你可以这样写:

var propertyName = GetPropertyName(
    () => model.Quantity); // returns "Quantity"