Déploiement d'un composant WebPart SharePoint avec sa référence de service Web
-
22-07-2019 - |
Question
J'essaie de créer un composant WebPart SharePoint contenant une référence de service à un autre serveur SharePoint que je dois appeler à partir du code vb. Toutefois, lorsque j'essaie d'appeler le service Web distant pour la première fois, le journal contient le message suivant:
Impossible de trouver l'élément de point de terminaison par défaut faisant référence au contrat 'ListReference.ListsSoap' dans la section de configuration du client ServiceModel. Cela peut être dû au fait qu'aucun fichier de configuration n'a été trouvé pour votre application ou qu'aucun élément d'extrémité correspondant à ce contrat n'a été trouvé dans l'élément client. sur System.ServiceModel.Description.ConfigLoader.LoadChannelBehaviors (ServiceEndpoint serviceEndpoint, String configurationName)
sur System.ServiceModel.ChannelFactory.ApplyConfiguration (String configurationName)
à System.ServiceModel.ChannelFactory.InitializeEndpoint (String configurationName, adresse EndpointAddress)
sur System.ServiceModel.ChannelFactory 1..ctor (String endpointConfigurationName, EndpointAddress remoteAddress)
sur System.ServiceModel.EndpointTrait
1.CreateSimplexFactory ()
sur System.ServiceModel.ClientBase 1.CreateChannelFactoryRef (EndpointTrait
1 endpointTrait)
à System.ServiceModel.ClientBase 1.InitializeChannelFactoryRef ()
sur System.ServiceModel.ClientBase
1..ctor ()
sur VSeWSS.ChangeRequestWorkflow.ChangeRequest.SubmitForm (Expéditeur d'objet, EventArgs e)
Quel est le bon moyen de déployer un composant WebPart avec une référence de service, pourrais-je faire quelque chose de mal? Merci!
La solution
Vous devez ajouter la configuration de l'ordinateur d'extrémité dans le fichier Web.config du site SharePoint qui utilise le service Web.
Autres conseils
J'ai trouvé cette question qui a résolu mon problème. Fondamentalement, je devais simplement créer un objet BasicHttpBinding et renseigner ses propriétés avec celles que le générateur SVC a créées dans mon app.config.
En fait, j'ai résolu mon problème. Mon application a de nombreux projets et le fichier de configuration était dans le projet appelant le WebService, mais il semble que cela doit être dans le projet de départ ...
MyService srv = new MyService();
srv.Url = SPContext.Current.Web.Properties["serviceurl"];
Ça marche comme ça. hth.