c# - 在整个大型 Web 应用程序中一致地格式化 C# 中的字符串

标签 c# .net asp.net architecture formatting

我正在寻找一种一致的方式来构建我在整个大型 Web 应用程序中对格式化字符串的使用,并且我正在寻找有关该方法的建议或最佳实践。

到目前为止,我有一个静态类可以执行一些常见的格式设置,例如

格式化.FormatCurrency

格式化.FormatBookingReference

虽然我不相信这是要走的路,但我更愿意直接在 .NET 中使用格式化字符串的标准方式并使用:

金额.ToString("c")

reference.ToString("000000")

我将 IFormattable 和 ICustomFormatter 用于一些更复杂的数据结构,但我正在努力处理我们需要格式化的更简单的现有对象(在本例中为 Int32,还有 DateTime)。

我是简单地为“c”和“000000”定义常量并在整个网络应用中一致地使用它们,还是有更标准的方法来做到这一点?

最佳答案

一种选择是使用带有扩展方法的辅助类

public static class MyWebAppExtensions
{
    public static string FormatCurrency(this decimal d)
    {
        return d.ToString("c");
    }
}

然后在任何有小数值的地方

Decimal d = 100.25;
string s = d.FormatCurrency();

关于c# - 在整个大型 Web 应用程序中一致地格式化 C# 中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/294443/

相关文章:

c# - 模拟扩展方法导致 System.NotSupportedException

c# - 在 SQL Server 2008 中存储数组

.net - msxml6.dll 错误 '80072ee2' 操作超时

javascript - Dynamics CRM 中 clientglobalcontext.js.aspx 的确切用途是什么?

c# - 如何在 C# 中基于现有委托(delegate)类型创建新的委托(delegate)类型?

c# - 如何删除文本框上的小写字母?

c# - 评论存储在哪里以及如何提取它们?

c# - C#中的匿名方法是什么?

c# - .csproj 中的 CopyToPublishDirectory

ASP.NET Web API Azure Blob 存储非结构化