如何在 mvc 中为 Decimal 属性 创建自定义 DisplayFormat?
How to create custom DisplayFormat for Decimal property in mvc?
我有一个 属性 小数类型的网格 -
[DisplayFormat(DataFormatString = "{0:0.000000}", ApplyFormatInEditMode = true)]
public decimal? UnitPrice { get; set; }
我希望 [DisplayFormat 自定义为接受不同行的不同值,例如 -
第 1 行的单价 ~ 只显示 2 位小数
{0:0.00}
第 2 行的单价 ~ 显示 4 位小数 -
{0:0.0000}
小数点后的值来自数据库,我将它们作为另一个 属性 存储在模型中,例如 -
public int UnitsDecimals { get; set; }
我已经在使用编辑器和显示模板了。我应该创建自定义 htmlhelper 吗?如果是,我如何将 UnitsDecimal 的值传递给自定义助手?
您可以在您的视图模型中添加额外的 属性 以指示您的数据来源。
public class ViewModel {
public decimal? UnitPrice { get; set; }
//This Changes as per source
public string PriceNumberFormatString{get;set;}
}
您可以详细说明 PriceNumberFormatString getter setter 用于来自数据源的十进制输入的不同值..
然后在视图中,您可以使用 PriceNumberFormatString 的值来操作 UnitPrice 的视图。操作取决于您的 UI 库。
我有一个 属性 小数类型的网格 -
[DisplayFormat(DataFormatString = "{0:0.000000}", ApplyFormatInEditMode = true)]
public decimal? UnitPrice { get; set; }
我希望 [DisplayFormat 自定义为接受不同行的不同值,例如 -
第 1 行的单价 ~ 只显示 2 位小数 {0:0.00}
第 2 行的单价 ~ 显示 4 位小数 - {0:0.0000}
小数点后的值来自数据库,我将它们作为另一个 属性 存储在模型中,例如 -
public int UnitsDecimals { get; set; }
我已经在使用编辑器和显示模板了。我应该创建自定义 htmlhelper 吗?如果是,我如何将 UnitsDecimal 的值传递给自定义助手?
您可以在您的视图模型中添加额外的 属性 以指示您的数据来源。
public class ViewModel {
public decimal? UnitPrice { get; set; }
//This Changes as per source
public string PriceNumberFormatString{get;set;}
}
您可以详细说明 PriceNumberFormatString getter setter 用于来自数据源的十进制输入的不同值..
然后在视图中,您可以使用 PriceNumberFormatString 的值来操作 UnitPrice 的视图。操作取决于您的 UI 库。