0

get に最適な安らかな wcf サービスを作成しました。今、私はいくつかの投稿方法を構築しています。クライアントは、JSON 形式でこのサービスにデータを投稿します。サービス メソッドにはパラメーターがないため、作成されたリクエストから jsondata を読み取る必要があります。リクエストから作成されたデータを取得する方法がわかりません。

 [OperationContract]
 [WebInvoke(Method = "POST", UriTemplate = "/SaveEmployee", RequestFormat =    WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]

public bool SaveEmployee()
        {
            //Capture Employee Object Data here and perform save
            return true;
        }

        [DataContract]
        public class Employee
        {
            [DataMember]
            public int Id
            {
                get;
                set;
            }

            [DataMember]
            public string Name
            {
                get;
                set;
            }
        }
4

1 に答える 1

0

データ コントラクト タイプを使用してメソッドをセットアップすると、リクエスト ボディが入力され、逆シリアル化されます。

[OperationContract]
[WebInvoke(Method = "POST", UriTemplate = "/SaveEmployee", RequestFormat =            WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]
public bool SaveEmployee(Employee sentEmployee)
    {
        //Capture Employee Object Data here and perform save
        return true;
    }

そのようにできない場合は、json データを URL パラメーターに渡し、コンテンツを手動でシリアル化解除する必要があります。

于 2013-01-16T17:21:15.280 に答える