C# 跨WCF服务共享常量

C# 跨WCF服务共享常量,c#,.net,wcf,web-services,constants,C#,.net,Wcf,Web Services,Constants,我有一些包含特殊字符的字符串,因此它们不能作为枚举成员在WCF服务中共享。(实际上,它们是配置值的键。) 我希望能够在客户端传入密钥并返回配置值。如果有更改,我只想在一个地方更改配置键 常数将是理想的,因为它们可以在整个解决方案中作为强引用进行更改,并且基线值可以通过服务引用更新进行更新 目前,我可以想到两种可能的解决方案: 创建共享程序集并将常量放置在其中 在整个服务中共享常量 问题是,我无法让datacontractserializer序列化常量。那有可能吗?共享程序集是我唯一的选择吗?如果

我有一些包含特殊字符的字符串,因此它们不能作为枚举成员在WCF服务中共享。(实际上,它们是配置值的键。)

我希望能够在客户端传入密钥并返回配置值。如果有更改,我只想在一个地方更改配置键

常数将是理想的,因为它们可以在整个解决方案中作为强引用进行更改,并且基线值可以通过服务引用更新进行更新

目前,我可以想到两种可能的解决方案:

  • 创建共享程序集并将常量放置在其中
  • 在整个服务中共享常量

  • 问题是,我无法让datacontractserializer序列化常量。那有可能吗?共享程序集是我唯一的选择吗?

    如果是我,我会将配置值保存在外部配置文件中。您可以将键/值对存储在配置文件中,然后允许所有程序集访问该文件。这样,配置值就可以在不重新编译程序集的情况下更改,并且可以同时从任何服务访问。

    如果配置值可能会更改,我同意justin的看法,否则就使用共享程序集,因为将来共享的对象数量可能会增加。