Programmatic Versus Administrative Configuration

The two techniques shown so far for configuring the client and the service complement each other. Administrative configuration gives you the option to change major aspects of the service and the client post-deployment, without the need to rebuild or redeploy. The major downside of administrative configuration is that it is not type-safe and you will discover configuration errors only at runtime.

Programmatic configuration is useful when the configuration decision either is completely dynamic—i.e., when it is taken at runtime based on the current input or conditions—or is static and never changes, in which case you might as well hardcode it. For example, if you are interested in hosting in-proc calls only, you can hardcode the use of the NetNamedPipeBinding and its configuration. However, by and large, most clients and services resort to using a config file.

Get Programming WCF Services, 3rd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.