[英]ASP.NET CORE MVC post form with FormCollection Model in controller
[英]Model doesn't bind in POST controller method .Net Core MVC
我有一个模型:
public class CompanyFooterUpdateModel
{
public CompanyFooterUpdateModel(){}
public Guid CompanyId { get; set; }
public string FooterHtml { get; set; }
}
控制器:
public async Task<IActionResult> SaveFooter([FromBody] CompanyFooterUpdateModel model)
{
//.... do something in Company controller
}
查看,使用 axios 帖子:
function SaveCompanyFooter() {
axios.post('@Url.Action("SaveFooter", "Company")',
{
model: {
FooterHtml: window.HtmlEditor.getData(),
CompanyId: "@Model.CompanyId"
}
}
).then(response => {
// .... do something
});
}
然后,我尝试了一切,[FromBody],任何其他,什么都没有……请解释一下,我做错了什么?
UPD1:所以我也尝试过这样的事情:
axios.post('@Url.Action("SaveFooter", "Company")',
{
"FooterHtml": window.HtmlEditor.getData(),
"CompanyId": "@Model.CompanyId"
}
)
和
public async Task<IActionResult> SaveFooter(Guid CompanyId, string FooterHtml)...
UPD2:控制器动作截图
尝试从 javascript 中删除 "
axios.post('@Url.Action("SaveFooter", "Company")',
{
FooterHtml: window.HtmlEditor.getData(),
CompanyId: "@Model.CompanyId"
}
)
或尝试添加 json 标头
axios.post('@Url.Action("SaveFooter", "Company")',
{
FooterHtml: window.HtmlEditor.getData(),
CompanyId: "@Model.CompanyId"
}
),
{
'Content-Type': 'application/json'
})
.then((response) => {
.....
并使用此操作
public async Task<IActionResult> SaveFooter([FromBody] CompanyFooterUpdateModel model)
{
//.... do something in Company controller
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.