gpt4 book ai didi

c# - 您将如何管理每个 c# 类的常量?

转载 作者:行者123 更新时间:2023-12-01 15:19:59 25 4
gpt4 key购买 nike

在所有应用程序中,总会使用一些常量值。

我不喜欢在我的应用程序中的每个代码中硬编码这些值,因为它显着降低了可维护性。

我有两个选择:

  • 在目标类中创建一个内部常量类并添加公共(public)常量值,例如

    内部静态类常量
    {
    公共(public)常量字符串 IdAttribute = "id";
    }

  • 或者
  • 创建一个资源文件 (.resx) 并将我的常量值和公式存储在那里。

  • 我在这里的应用程序中使用了第二种方法。我在使用资源文件时遇到的一个问题是我无法对它们使用 .NET 4.0 可选参数功能。

    例如以下不起作用:
    public void DoSomething(string id = Resources.Constants.Id)
    {
    // ..
    }

    错误是在运行时未确定 Id 的值。

    基本上,您会使用并推荐哪种方式来管理每个类的常量?为什么?

    我目前的方法是,如果我有只应该在一个类中使用的常量,我会在该类中创建一个静态常量类。如果我的常量要在多个类或项目中使用,我会将它们放在一个资源文件中,例如PageUrls.resx。

    谢谢,

    最佳答案

    就我个人而言,我宁愿在它们逻辑所属的类中定义常量,类似于(比如说)DateTime.MinValue .

    然后,一般来说,公开这些常量有点“代码味道”,暗示一些可能应该以更好的方式表达的耦合。当您的代码允许时,将它们设为私有(private)(或内部)显然没有害处。

    但是,有时存在全局常量。这些通常是实际配置,应该这样对待。

    关于c# - 您将如何管理每个 c# 类的常量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7672137/

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