哪种WCF配置方法更智能?

时间:2011-08-05 11:05:16

标签: c# wcf

我正在阅读2本关于WCf的书籍,其中一本显示配置App.Config,另一本显示为Code in C#

我想知道我应该使用哪种方法,以及彼此有什么好处。 Wcf配置向导是否也支持配置后面的c#代码?

感谢您的回答。

3 个答案:

答案 0 :(得分:5)

配置文件可以在不重建的情况下进行更改(比如说,添加自定义检查器或序列化程序),在客户端/服务器之间复制/粘贴非常简单,得到了IDE工具的支持

如果您在运行时配置系统 (即从其他服务器获取信息),或者作为库(dll)运行,并且不能保证配置文件将会运行,则代码很方便a:存在,或b:拥有您的配置。代码还具有智能感知/静态检查,以避免脑死亡错误(xml中的拼写错误等)。

我会使用一个文件,直到您知道某个方案与文件不兼容为止。

还要考虑:部署代码更改与配置更改有多难?对我来说他们差不多,但对你来说可能并非如此。也许更改机器上的配置更容易?也许不是。

答案 1 :(得分:1)

配置文件方法更好,它提供了更大的灵活性。例如,我通过更改配置文件来更改身份验证类型(用户名密码/窗口)。

答案 2 :(得分:1)

我想这取决于你的需求。我个人倾向于使用代码配置wcf,特别是对于不太可能改变的事情。这可能包括错误处理程序/记录器,行为,身份验证模块,服务主机工厂等

对于更多动态内容,例如连接字符串,密码,文件路径等,都在.config文件中配置。

使用代码的最大优势之一是您的代码现在可以支持IOC /依赖注入,编译时检查等内容。

我并不认为所有内容都应该在配置文件中,因为它更容易更改。在大多数情况下,我看到它从未改变过生产。