【问题标题】:Following a WCF binding configuration naming convention遵循 WCF 绑定配置命名约定
【发布时间】:2012-11-09 18:49:05
【问题描述】:

是否有人可以推荐用于 WCF 绑定配置的完善命名约定?例如,在检查 Microsoft 的 WCF/WF 示例时,使用了多种约定,包括:

  • 大部分时间使用绑定 + 序列号(例如“Binding1”)
  • ProtocolName + Binding(例如“TcpBinding”)用于自定义绑定
  • QueueName + Binding(例如 OrderProcessorBinding)用于 msmq 绑定
  • 在某些情况下使用绑定描述(例如“BindingWithSession”)

我参与过的项目中的绑定配置名称同样具有特殊性。如果人们希望获得更大的一致性,是否有可以遵循的既定惯例?

【问题讨论】:

    标签: wcf wcf-binding


    【解决方案1】:

    我会说这真的没关系。选择一个适合您的约定,并在您自己的代码中与之保持一致。正如您已经指出的那样 - 您观察到的各个项目之间存在很多不一致之处。你可能会从你读过的其他代码中借鉴一些想法——但我认为重要的部分是在你自己的代码中保持一致。

    【讨论】:

    • 这绝对是合理的。不过,我现在的客户倾向于支持来自既定权威(Microsoft、Fowler、Erl 等)的约定。但是,如果没有这一点,我们就需要遵循常识。
    【解决方案2】:

    绑定是如何组装 WCF 通道堆栈的“配方”。

    理论上,每次您在 wcf 配置(或代码)中配置绑定配置部分时,您都在指定绑定所需的一些相当准确的行为。

    所以您的绑定名称应该真正描述您正在使用的“配方”。

    例如,如果您正在修改发送超时以支持长时间运行的操作,这应该反映在您的绑定名称中。同样,如果您将绑定安全性设置为仅传输以实现互操作性,那么这也可能会反映出来。

    绑定允许您指定范围广泛的行为,例如,您可能有一个与 activex 客户端一起使用的绑定,您可能需要为此选择一个替代格式化程序进行序列化。将此绑定命名为“Binding1”并不能真正解释它在做什么。

    所以我认为绑定应该描述配方。

    【讨论】:

    • 我认为这是要走的路。开发人员应该能够查看端点的组成并知道其意图是什么。如果它旨在支持特殊需求,那么在绑定配置的名称中反映这一点应该有助于明确这一点。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-02
    • 1970-01-01
    • 1970-01-01
    • 2011-02-07
    • 2010-09-21
    • 1970-01-01
    相关资源
    最近更新 更多