2012-05-01 12 views
1

私は、RESTベースのWCFサービスを作成してjsonデータを送受信しています。私はほとんどのものを動作させることができますが、この最後の部分は本当に私を困らせました。REST、json、.Net4、および複合データ型

サービスに複雑なデータ型を送信しています。データを送信していますが、クラスがインスタンス化されていないかのようです。 (別のクラスファイル内)

クラスの宣言:

public class WhereItsAt 
{ 
    public float Latitude { get; set; } 
    public float Longitude { get; set; } 
    public string Category { get; set; } 
    public string SearchTerms { get; set; } 
    public float Distance { get; set; } 
} 


    [WebInvoke(Method = "POST", UriTemplate = "/New", RequestFormat = WebMessageFormat.Json)] 
    public string Create(WhereItsAt newstuff) 
    { 
     return string.Format("Success: {0} <Should show search terms here>", newstuff.SearchTerms); 
    } 

問題は、私は私のクラスを変更する場合newstuff.SearchTerms(newstuffのOK、全て)がnullまたは0

であるということです。

public class WhereItsAt 
{ 
    public float Latitude { get; set; } 
    public float Longitude { get; set; } 
    public string Category { get; set; } 
    public string SearchTerms { get{return "hello"}; set; } 
    public float Distance { get; set; } 
} 

データを返します。

私はバイオリンと呼んでいる:

POST http://127.0.0.1:8835/testing/New HTTP/1.1 のUser-Agent:フィドラー ホスト:127.0.0.1:8835 のContent-Length:122 のContent-Type:アプリケーション/ JSONを。 charset = UTF-8

[{ "緯度":43.34、 "経度":45.234、 "カテゴリ": "未設定"、 "のSearchTerms": "ダウンタウン"、 "距離":12.234}]

私のクラスがインスタンス化されていないかのように見えます。私はセット内にいくつかのダミーコードを作成しました

{set {int i = 1;};

しかし、セットにブレークポイントを作成しても、それは決して呼び出されません。

私は間違っていますか?あなたがのDataContractとデータメンバーがあなたのデータモデルに属性を追加する必要が

答えて

0

...

は、私は、何の変化もそれをやったhttp://msdn.microsoft.com/en-us/library/ms733127.aspx

[DataContract] 
public class WhereItsAt 
{ 
    [DataMember] public float Latitude { get; set; } 
    [DataMember] public float Longitude { get; set; } 
    [DataMember] public string Category { get; set; } 
    [DataMember] public string SearchTerms { get{return "hello"}; set; } 
    [DataMember] public float Distance { get; set; } 
} 
+0

を参照してください。まだまったく同じことをしています。 – Carl

+0

私のフィドラーテストデータで問題になっています。私は[]を囲むセットを持っていた。私がそれを見た場所は不明で、Fiddlerのパーサーは不平を言っていませんでした。 – Carl

関連する問題