1

非常に基本的な機能をテストしようとして、初めてAjax対応のWcfサービスを使用しました。

これが私のサービスファイルService.svcです:

[ServiceContract(Namespace = "testService")]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class Service
{
[OperationContract]
public void DoWork(int id)
{
    return;
}

[OperationContract]
[WebInvoke]
[WebGet]
public string sting(int id) 
{
    string _sting = string.Format("Number is {0}" + id);
    return _sting;
}

}

jqueryを使用して呼び出すことを試みていますが、これを使用します:

    $(function () {
        $.ajax({
            type: "POST",
            url: "Service.svc/sting",
            data: '{"id":"3"}',
            processData: false,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function () {
                alert("success");
            },
            error: function (msg) {
                $("#errorDiv").text(msg);
            }
        });
    });

しかし、私は常にエラーを受け取ります[object Object]

何が間違っているのか、ありがとう

4

1 に答える 1

2

2 つのこと:

  1. Web メソッドを として定義しましたが 、Jquery Ajax メソッドでリクエスト[WebGet]として呼び出します。を次のようにPOST置き換えます。[WebGet]

    [WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json)]

  2. Web.config に何があるかわかりませんが、エンドポイントの動作が正しく定義されていることを確認する必要があります。

    これについてまだヘルプが必要な場合は、web.config ファイルを投稿していただければ助かります。

于 2012-07-22T18:47:34.040 に答える