簡體   English   中英

ASP.NET C#REST WEB API-POST多個JSON值

[英]ASP.NET C# REST WEB API - POST Multiple JSON values

我正在努力找到解決問題的方法:我在C#中有一個非常簡單的Web API,可以很好地使GET,POST,PUT和DELETE員工工作,但所有工作都使用簡單的JSON輸入:

{
   "FirstName": "Sam 10",
   "LastName": "Wicht 10",
   "Gender": "Male",
   "Salary": 140000
}

我想做的是招聘很多員工,例如:

"employees": [{
   "FirstName": "Sam 10",
   "LastName": "Wicht 10",
   "Gender": "Male",
   "Salary": 140000
}, {
   "FirstName": "Sam 11",
   "LastName": "Wicht 11",
   "Gender": "Male",
   "Salary": 99000
}]

然后在我的C#代碼中,我收到一個List<Employee>其中包含JSon中的每個員工,然后循環執行For Each ...更新每個員工。

性能方面,這真的很糟糕嗎? 我想我可以限制List的大小,並且如果.Count()大於X,可以避免運行任何代碼,請讓我知道如何從JSON輸入中檢索此內容嗎?

這是我的班級雇員:

public partial class Employee
{
    public int ID { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public string Gender { get; set; }
    public Nullable<int> Salary { get; set; }
}

是否應該包括一個代表所有參數的IEnumerable<Employee>的新類?

這是出於學習和測試目的,我試圖檢索[FromBody] List<Employee> myVariableName; returns null; [FromBody] List<Employee> myVariableName; returns null;

由於在示例json中有一個封閉的employee對象,因此您將獲得null。 改為POST:

[{
   "FirstName": "Sam 10",
   "LastName": "Wicht 10",
   "Gender": "Male",
   "Salary": 140000
}, {
   "FirstName": "Sam 11",
   "LastName": "Wicht 11",
   "Gender": "Male",
   "Salary": 99000
}]

這將與您的控制器定義相匹配:

public ActionResult Post(List<Employee> employees)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM