WCF ServiceHost - Single contract multiple endpoints

It is possible to create multiple endpoints in WCF from one service contract declaratively (by declaring it in the configuration file), but it is also possible to do it programmatically (I think almost everything that can be done declaratively can also be done programmatically, but I’m not very sure about this one though).

<!-- Add the following element to your service behavior configuration. -->

<serviceMetadatahttpGetEnabled="true" />

</behavior>

</serviceBehaviors>

</behaviors>

</system.serviceModel>

</configuration>

Note that I removed the endpoints part. This is to ensure that the endpoints created are from my code, instead of my configuration file. Next is the ServiceHost creation, where I will define the endpoints.