Asp.net

ASP.Net Core - 獲取文章表單的所有數據

  • August 22, 2016

我想保存表單的所有數據。

我的表格有這些元素-

在此處輸入圖像描述

(使用郵遞員外掛

我的控制器是這樣的-

[HttpPost]
public async Task<IActionResult> Insert(IFormCollection data)
{
   return Ok(data);
}

所以,我得到了這樣的東西-

[
 {
   "key": "user_id",
   "value": [
     "'12'"
   ]
 },
 {
   "key": "title",
   "value": [
     "123"
   ]
 },
 {
   "key": "text[]",
   "value": [
     "werwer",
     "ghj"
   ]
 }
]

我想獲得texts的價值。

所以,對於這種情況——

"werwer",
"ghj"

所以,我嘗試過這樣的事情-

foreach (string description in data["text"])
{
   // description => empty
}

也試過這個-

data.text

並且-

data->text

但沒有什麼對我有用。

有人可以幫忙嗎?

提前感謝您的幫助。

為什麼不遍歷每個鍵,如果鍵是“文本”,則獲取值。由於該值是一個逗號分隔的字元串,您可以呼叫該Split方法來獲取一個包含 2 個項目的數組(來自您的範例輸入)。

foreach (string description in data.Keys)
{
   if (description.Equals("text"))
   {
       var v = data[description];
       var stringItems = v.Split(',');
       foreach (var stringItem in stringItems)
       {
         //do something with stringItem
       }
   }
}

順便說一句,關鍵應該是text,而不是text[]。即使您有多個具有相同名稱“文本”的輸入欄位,當您送出時,它也將是一個鍵("text"),其中包含 2 個項目的值屬性

{
   "key": "text",
   "value": [
     "werwer",
     "ghj"
   ]
 }

引用自:https://stackoverflow.com/questions/39082155