我在一个.Net Core Web API名为的控制器上执行此操作HomeController:
[HttpPost]
public IActionResult TestMethod([FromForm] DocumentDto xml) {
int abc = 0;
return Ok();
}
和模型DocumentDto:
[XmlRoot(ElementName = "document", Namespace = "")]
public class DocumentDto
{
[XmlElement(DataType = "string", ElementName = "id")]
public string Id { get; set; }
[XmlElement(DataType = "string", ElementName = "content")]
public string Content { get; set; }
[XmlElement(DataType = "string", ElementName = "author")]
public string Author { get; set; }
}
我还在 上添加了一个断点int abc = 0;,我使用 Postman 来执行如下所示的操作
xml用于请求的内容如下
<document>
<id>12345</id>
<content>This is a Test</content>
<author>vchan</author>
</document>
但是,在调试期间,xml变量具有null如下所示的属性
此外,在Startup.cs文件中,我包含了AddXmlSerializerFormatters()它,如下所示:
services
.AddMvc()
.AddXmlSerializerFormatters()
.SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
为什么xml没有解析?


