Tout ce que vous avez à faire pour ne pas avoir le monde extérieur (clients WCF) savent d'entre eux est de ne pas les marquer avec l'attribut [ServiceContract] , alors il n'a pas d'importance si elles sont publiques
si vous distribuez la DLL avec le service WCF dans ce que vous pouvez marquer les méthodes:
- privé (ne peut être appelé à partir de la même classe)
- protégée (comme privée + une classe héritant de celui-ci)
- internes (le même que privés + toutes les autres classes dans le même ensemble + toutes les classes dans les assemblées qui a été nommé dans InternalsVisibleTo (google it)
Vraie cela limite l'accès, mais ce n'est pas une réponse complète. Vraiment, "public" est acceptable tant que le développeur ne les expose pas ouvertement avec l'attribut ServiceContract comme indiqué ci-dessus. –