2017-04-11 45 views
0

我想使用aspnetcore發送一個JSON對象到webapi。這似乎是一個簡單的任務。但是,JSON數據的字段名稱包含破折號( - ),例如{ Mj-TemplateID : 1}。由於Newtonsoft.Json不可用於.netcore,所以我無法使用JsonProperty更改下面的json字段名稱。json數據的自定義字段名發佈到aspnetcore中的webapi

public class SendData { 
    [JsonProperty("Mj-TemplateID")] 
    public string TemplateId { get; set; } 
} 

如何在發送json數據時指定不同的名稱?

我要送這樣的事情

curl -s \ 
-X POST \ 
--user "$MJ_APIKEY_PUBLIC:$MJ_APIKEY_PRIVATE" \ 
https://api.mailjet.com/v3/send \ 
-H 'Content-Type: application/json' \ 
-d '{ 
    "FromEmail":"[email protected]", 
    "FromName":"Mailjet Pilot", 
    "Subject":"Your email flight plan!", 
    "MJ-TemplateID":"1", 
    "MJ-TemplateLanguage":true, 
    "Recipients":[ 
      { 
        "Email": "[email protected]" 
      } 
    ] 
}' 

回答

1

您已經在項目中依賴於Newtonsoft.json nuget。 只是嘗試添加

using Newtonsoft.Json; 

JsonProperty屬性將提供給你。

爲什麼你已經擁有了它?您的項目中包含對Microsoft.AspNetCorenuget package的引用,該引用具有Microsoft.Extensions.Configuration.Jsonpackage作爲依賴關係,其依次使用Newtonsoft.json。因此,在恢復軟件包之後,所有這些軟件包都可供您使用。

+0

對不起,我的不好。是的,它的工作原理。 Visual Studio沒有提供給我(作爲解決錯誤的建議)在編譯錯誤中添加「using」,然後我檢查了Newtonsoft.Json支持的框架,但沒有找到.netcore。所以,我認爲它不起作用。 – dudedev

相關問題