这是我的Web API方法签名:
[HttpPut]
public TraceItemNoBreadCrumbs UpdateTraceItem(int traceId, string itemType, string itemId, [FromBody]string notes)
我使用Postman来测试这个,如果我只是通过输入体:
"我的笔记"
然后检查传入的参数是否正确。 但前端帖子需要传递如下: 数据: {" notes":" My Notes" }
但是当我把它传入时,现在注释="注意",不是"我的笔记" (它看到的第一个字符串)。
我只遇到一个字符串问题。
在另一个方法中,我传入[FromBody] myListObject 像
[
{ "prop1": "value", "prop2": "value" }
{ "prop1": "value", "prop2": "value" }
]
它完美无缺。 我只需要为我们的前端人员解决这个问题。
答案 0 :(得分:0)
我不得不接受字符串,而是必须在对象内部对字符串进行建模。 所以它看起来像:
[HttpPut]
public TraceItemNoBreadCrumbs UpdateTraceItem(int traceId, string itemType, string itemId, [FromBody]TraceItemNote notes)
TraceItemNote的样子:
public class TraceItemNote
{
public string Notes { get; set; }
}
我认为因为我们发送的是JSON对象,所以它们必须有一个C#对象。
答案 1 :(得分:0)
由于它来自正文,因此您无需将其格式化为json对象。只是将“我的笔记”单独传递给身体。