2016-10-05 4 views
0

私はDictionnaryを送信しようとしています。 これは私のDIctionnaryの構造である:AspnetCore datacontractは私の辞書のキーの名前空間にjsonでシリアル化します

var gridsAndCountriesByShipper = new Dictionary<Organisation, List<Grid>>();

そして、これはクラスでは、名前空間ではなく、オブジェクトの値の表示されますWICH:私はこのオブジェクトを送信するとき

namespace ez.webservice.PublicRestApi.DTO.References 
{ 
    [DataContract(Name = "organisation", Namespace = "")] 
    public class Organisation 
    { 
     [DataMember(Name = "id")] 
     public int Id { get; set; } 

     [DataMember(Name = "longName")] 
     public string LongName { get; set; } 

     [DataMember(Name = "shortName")] 
     public string ShortName { get; set; } 
    } 
} 

はFinalyこれが結果です:

 return Ok(gridsAndCountriesByShipper); 

{ 
    "ez.webservice.PublicRestApi.DTO.References.Organisation": [ 
    { 
     "owner": { 
     "$id": "1", 
     "id": 2, 
     "longName": null, 
     "shortName": "Test" 
     }, 
     "calendar": { 
     "id": 3, 
     "name": null, 
     "dotNetName": null, 
     "mySqlName": null, 
     "offset": 0 
     }, 
     "country": { 
     "id": 13, 
     "name": "France", 
     "alpha2": "FR", 
     "alpha3": "FRA", 
     "grids": [], 
     "logo": { 
      "id": 13, 
      "name": "France", 
      "shortName": "FR" 
     } 
     }, 
     "countryFlag": null, 
     "flag": "", 
     "granularity": "DAY" 

解決策が見つかりませんでした。

Thxを:)

答えて

1

あなたOrganisationToString()メソッドをオーバーライドしないと、デフォルトの動作は、名前空間

でクラス名を返すことです
関連する問題