2016-04-18 11 views
0

は私がconsume-しようとしているWebサービスメソッドです。このメソッドを呼び出すためのMVCビューからASMX Webサービスを呼び出す方法は?続き

[WebMethod] 
    public string HelloWorld() 
    { 
     return "Hello World"; 
    } 

AJAX呼び出しを使用して

$.ajax({ 
    type: "POST", 
    url: "/WebServices/WebService1.asmx/HelloWorld", 
    data: "{}", 
    contentType: "application/json; charset=utf-8", 
    success: function (msg) { 
     var data = msg.d; 
    }, 
    error: function (msg) { 
     alert(msg.responseText); 
    } 
}); 

しかし、毎回私はだからかもしれませんが見つからないリソースのエラーを取得していますMVCビューから呼び出すと、私もlocalhostのパス全体を入れようとしましたhttp://localhost:60005/まだリソースのエラーが見つかりませんでした。誰かがMVCビューからasmx webserviceを呼び出す小さな例を教えてくれますか?

+0

試してみてください。

[System.Web.Script.Services.ScriptService] 

はあなたが素敵なチュートリアルhereを持っていますビューからアクションメソッドを呼び出し、コントローラアクションからWebメソッドを呼び出す –

+3

MVCビューかWebフォームから来ているかどうかは関係ありませんまたは普通のHTMLページであってもよい。クライアントに達すると、それはHTMLとJavaScriptだけです。あなたのパスがクライアント側で正しいことを確認してください。 – mason

+0

Webサービスが実際に呼び出されていることを確認してください。 Visual Studioには、ソリューション(右クリック)から[スタートアッププロジェクトの設定...] - > [複数のスタートアッププロジェクト]を選択すると、「複数のスタートアッププロジェクト」というオプションがあります。 WebServiceプロジェクト+ WebApplicationプロジェクトのAction = Startを設定します。 –

答えて

1

あなたRouteConfigに次の行を追加して試してみてください:あなたのASMX Webサービスクラスにも

routes.IgnoreRoute("{*x}", new { x = @".*\.asmx(/.*)?" }); 

、コメントを解除し、この行:

関連する問題