2015-11-19 65 views
1

我正在使用HttpClient將一些數據發佈到基於NodeJs的服務器。C# - 更改使用HttpClient發佈屬性的名稱

Class Employee 
{ 
     public string Name { get; set; } 
} 

的功能的代碼:

Employee e = new Employee(); 
e.Name = "TestUser"; 
var client = new HttpClient(); 

var task = client.PostAsJsonAsync(urlTemplate, e); 
var result = task.Result.Content.ReadAsStringAsync().Result; 

節點應用期望通過名稱的屬性FirstName (instead of Name)

在WCF中,我們可以通過將一個屬性在其定義的頂部改變數據成員的名稱:

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

Do w使用HttpClient發送數據時有類似的選項嗎?

+0

檢查此:http://stackoverflow.com/questions/27376133/c-httpclient-with-post-parameters – DinoMyte

回答

2

一個選項是使用Newtonsoft.Json庫。 你的模型類,你可以做

Class Employee 
{ 
     [JsonProperty(PropertyName = "FistName")] 
     public string Name { get; set; } 
} 

你PUT/POST之前,使用JsonConvert.SerializeXXXX功能,您的對象轉換成字符串,並使用該字符串的內容爲您的HttpClient的有效載荷。