Existe-t-il un moyen générique d'ajouter dynamiquement la sécurité de transport à la liaison de point de terminaison client pour le service WCF?Code générique pour ajouter dynamiquement la sécurité de transport à la liaison de point de terminaison client dans WCF
La liaison est accessible à l'aide de la propriété proxyObject.Endpoint.Binding. La propriété Security pour chaque liaison est spécifique à chaque liaison.
Edit:
Si la liaison ne peut pas être mis à jour après proxy est créé, est-il un moyen générique pour configurer proxy lier avec la sécurité des transports. J'utilise la surcharge ci-dessous pour créer un proxy. La liaison doit être créée en fonction du point de terminaison client et de la configuration de liaison définie dans le fichier de configuration.
protected ClientBase (Liaison de liaison, EndpointAddress remoteAddress);
Mon code:
Binding binding;
// Code to create binding using details from configuration file goes here...
// For example, if configuration uses BasicHttpBinding,
// then here we will create object of "BasicHttpBinding" and
// set its Security mode as Transport
TServiceProxyInterface serviceProxy = (TServiceProxyInterface)Activator.CreateInstance(
TServiceProxyClass,
binding,
new EndpointAddress(serviceAddress));
Vous ne pouvez pas modifier les propriétés et les paramètres d'un proxy une fois que vous l'avez créé. Vous devez créer un nouveau proxy avec les nouveaux paramètres. – Tim
Merci Tim! J'ai mis à jour ma question. – Sambhaji
Avec la surcharge que vous utilisez, vous pouvez déclarer par programmation l'objet 'binding' et le transmettre. Pouvez-vous poster plus de code que vous prévoyez d'utiliser? J'ai au moins une (peut-être plus) approches que vous pouvez utiliser, mais cela dépend en partie de ce que vous faites. Notez que la surcharge que vous prévoyez d'utiliser n'a rien à voir avec ce qui se trouve dans le fichier de configuration. – Tim