C# 何时读取配置文件参数

C# 何时读取配置文件参数,c#,.net,C#,.net,您喜欢在一个位置读取配置文件中的参数,并将其作为参数传递给模块/函数,还是在需要时读取这些参数?视情况而定,所有模块都需要这些参数吗?您的模块多久需要一次?一种方法是在应用程序启动时读取它们。参数对象存储在类似或的容器中。在我的模块中需要时(创建新的模块时),对象会被注入 如果参数很少使用,您可以在创建模块时按需加载。视情况而定,所有模块都需要这些参数吗?您的模块多久需要一次?一种方法是在应用程序启动时读取它们。参数对象存储在类似或的容器中。在我的模块中需要时(创建新的模块时),对象会被注入 如

您喜欢在一个位置读取配置文件中的参数,并将其作为参数传递给模块/函数,还是在需要时读取这些参数?

视情况而定,所有模块都需要这些参数吗?您的模块多久需要一次?一种方法是在应用程序启动时读取它们。参数对象存储在类似或的容器中。在我的模块中需要时(创建新的模块时),对象会被注入


如果参数很少使用,您可以在创建模块时按需加载。

视情况而定,所有模块都需要这些参数吗?您的模块多久需要一次?一种方法是在应用程序启动时读取它们。参数对象存储在类似或的容器中。在我的模块中需要时(创建新的模块时),对象会被注入


如果这些参数很少使用,您可以在创建模块时按需加载。

取决于场景

通常,配置文件与应用程序的配置相关;这意味着,应用程序将根据这些配置做出决定。例如,连接字符串参数,或指示应用程序在测试模式或实时模式下运行的参数


此外,只有在访问特定功能时,应用程序才需要一个参数。

取决于场景

通常,配置文件与应用程序的配置相关;这意味着,应用程序将根据这些配置做出决定。例如,连接字符串参数,或指示应用程序在测试模式或实时模式下运行的参数


此外,应用程序可能只在访问特定功能时才需要一个参数。

是的,我非常喜欢将它们作为参数传递,而且它并不接近。除了设置应用程序根目录外,
System.Configuration
类不应渗透到类中

  • 通过将它们作为参数传递,可以使依赖项显式化
  • 您可以避免域类依赖于
    System.Configuration
  • 如果您没有将它们作为参数传入(而是在需要时/在需要的地方读取它们),则违反了SRP
  • 如果您不将它们作为参数传递(而是在需要时/在需要的地方读取它们),则会使测试变得困难
  • 如果您不将它们作为参数传递(而是在需要时/在需要的地方读取它们),则会增加维护成本

  • 是的,我非常喜欢将它们作为参数传递进来,而且不接近。除了设置应用程序根目录外,
    System.Configuration
    类不应渗透到类中

  • 通过将它们作为参数传递,可以使依赖项显式化
  • 您可以避免域类依赖于
    System.Configuration
  • 如果您没有将它们作为参数传入(而是在需要时/在需要的地方读取它们),则违反了SRP
  • 如果您不将它们作为参数传递(而是在需要时/在需要的地方读取它们),则会使测试变得困难
  • 如果您不将它们作为参数传递(而是在需要时/在需要的地方读取它们),则会增加维护成本
  • 我不同意你的看法

    通常,组件最好从配置文件中读取自己的配置

    例如,在经典(表示、业务逻辑和数据访问)中,数据访问层最好从应用程序配置文件获得自己的配置(数据库连接字符串等),而不是需要与之相关的表示层

    框架中的其他示例:

    • WCF基础结构从应用程序配置文件中读取自己的复杂配置信息。如果希望希望使用WCF的应用程序必须读取此配置信息并将其传递给其他应用程序,那将是可笑的

    • ASP.NET成员资格子系统从
      web.config
      读取自己的配置数据

      • 我不同意

        通常,组件最好从配置文件中读取自己的配置

        例如,在经典(表示、业务逻辑和数据访问)中,数据访问层最好从应用程序配置文件获得自己的配置(数据库连接字符串等),而不是需要与之相关的表示层

        框架中的其他示例:

        • WCF基础结构从应用程序配置文件中读取自己的复杂配置信息。如果希望希望使用WCF的应用程序必须读取此配置信息并将其传递给其他应用程序,那将是可笑的

        • ASP.NET成员资格子系统从
          web.config
          读取自己的配置数据


        将它们作为参数传递,或创建一个类来读取它们。。您应该只从一个地方读取它们,因此如果它们更改重构将很容易。

        将它们作为参数传递,或者创建一个类来读取它们。。你应该只从一个地方读它们,这样如果它们改变重构就会很容易。

        你是在说app.config和Settings类吗?你是在说app.config和Settings类吗?