我想將一個物件(DataSet)從 Windows 應用程式發送到 .netcore API
像這樣的東西(Windows應用程式端)
public string submitRequest(Dataset request)
{
.
.
.
using (client)
{
client.Headers["Content-Type"] = "application/json; charset=utf-8";
byte[] result = client.UploadValues(Url, "POST", request);
return Encoding.UTF8.GetString(result);
}
}
(.netcore API)
public string submitRequest( values)
{
// processing values
}
我嘗試轉換為 json 并嘗試 NameValueCollection 但沒有結果。
uj5u.com熱心網友回復:
很簡單
- 在客戶端
創建新物件:
Class1 SentClass1 = new Class1 ();
然后序列化物件:
string json = JsonConvert.SerializeObject(SentClass1);
然后使用 WebClient 發送 JSON (UploadString)
using (WebClient client = new WebClient()){
client.Headers[HttpRequestHeader.ContentType]="application/json";
response = client.UploadString("ourUrl/SubmitRequest", json);
}
另一方面- 在服務器端
[HttpPost]
[Route("SubmitRequest")]
public void SubmitRequest(Class2 recievedClass){
return recievedClass.processing()
}
如果它們具有相同屬性的名稱,這會自動將資料從(從 Class1 轉換的 JSON)映射到 Class2,否則我可以使用自動映射器。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/532142.html
上一篇:C#檔案上傳:Web方法不接受隨上傳檔案一起發送的表單資料
下一篇:微服務通信模型
