gpt4 book ai didi

c# - 如何自动附加到十进制数据类型 DisplayFormatAttribute

转载 作者:太空宇宙 更新时间:2023-11-03 19:48:04 24 4
gpt4 key购买 nike

我正在使用 Entity Framework v6.1.3(代码优先)和 ASP.NET MVC v5.2.3

我知道我可以像这样在十进制数据类型中使用DisplayFormatAttribute

[DisplayFormat(ApplyFormatInEditMode = false, DataFormatString = "{0:N2}")]
public decimal Foo { get; set; }

现在我需要的是将此属性自动应用于每个实体中的每个小数

这可能吗?

我有一个类似的要求,即每个小数点的精度必须为 20,8,我使用这段代码解决了这个问题

public class EntitiesContext : DbContext
{
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
// Set all decimals data types by default as Decimal(20, 8)
modelBuilder.Properties<decimal>().Configure(c => c.HasPrecision(20, 8));
}
}

所以我想知道是否可以自动分配DisplayFormatAttribute

最佳答案

您可以创建小数类型的显示模板并将其放入Views/Shared/DisplayTemplates 文件夹:

@model System.Decimal
<span>
@Model.ToString("n2")
</span>

在 View 中只需使用 DisplayForDisplayForModel 方法:

@Model.DisplayFor(m => m.Foo)

进一步阅读:What are Display and Editor Templates?

关于c# - 如何自动附加到十进制数据类型 DisplayFormatAttribute,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42929241/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com