J'ai un site web qui a un simple service web. Je peux appeler le service web avec succès depuis javascript sur la page. Je dois être en mesure d'appeler le même service Web à partir d'une application de formulaires C#. Le code de service Web est très simple:Je n'arrive pas à appeler mon service Web depuis l'application C# Forms
[WebService(Namespace = "http://myurl.com/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.Web.Script.Services.ScriptService]
public class IDCService : System.Web.Services.WebService {
public IDCService() {
}
[WebMethod]
public string HelloWorld() {
return "Hello World";
}
Mon javascript fonctionne:
function HelloWorld() {
var yourName = $get('txtYourName').value;
alert(yourName);
IDCService.HelloWorld(HelloWorldCalback, failureCB);
}
function HelloWorldCalback(result) {
alert(result);
}
function failureCB(result) {
alert("Failed");
}
Cependant, lorsque je tente de définir une référence à la WS dans mon code C# ce que j'attends de voir est un objet avec une méthode "HelloWorld", ce que je vois en fait est un objet avec des propriétés comme "HelloWorldRequest", "HelloWorldResponse", "HelloWorldRequestBody" et ainsi de suite. Je suis nouveau aux services Web, et suis très confus. Toute aide serait appréciée.
Cela explique beaucoup de choses, mais, pour une raison quelconque mon projet Windows formulaire ne dispose pas d'option d'ajouter une référence Web, il suffit d'ajouter référence et ajouter une référence de service. Ce qui est bizarre, car l'application Web de la même solution dispose d'une référence Web supplémentaire. Des idées sur pourquoi je ne peux pas ajouter une référence Web? –
Bonne explication, @Marc! +1 – Cerebrus
Jessica: si vous utilisez "Ajouter une référence de service", cliquez sur le bouton "Avancé", et sur cet écran, vous devriez utiliser un bouton "Ajouter une référence Web". –