【发布时间】:2021-11-10 06:11:06
【问题描述】:
我想从 ASP.NET Core WEB API 中基于 XML 的 POST 请求中删除空 XML 标记。空 XML 标记困扰我使用 XmlSerializerFormatters反序列化 XML 到模型。
<?xml version = "1.0" encoding="UTF-8"?>
<DetailAssessmentRequest>
<CaseId></CaseId>
...
<LeisureTimeActivities>
<LeisureTimeActivity>1</LeisureTimeActivity>
<LeisureTimeActivity/> //want to remove this
<LeisureTimeActivity>2</LeisureTimeActivity>
<LeisureTimeActivity/> //want to remove this
</LeisureTimeActivities>
<LeisureTimeActivityOthers></LeisureTimeActivityOthers> //want to remove this
...
<Observation>Comments</Observation>
</DetailAssessmentRequest>
我已经在我的Startup.cs
services.AddMvc()
.AddXmlSerializerFormatters()
.AddXmlDataContractSerializerFormatters();
这是我的模型:
[Serializable]
public class DetailAssessmentRequest
{
public int CaseId { get; set; }
...
[XmlArray("LeisureTimeActivities"), DefaultValue(null)]
[XmlArrayItem("LeisureTimeActivity")]
public List<int> LeisureTimeActivities { get; set; }
public string LeisureTimeActivityOthers { get; set; }
...
public string Observation { get; set; }
}
【问题讨论】:
-
嗨@Md。 Asaduzzaman,它对我有用,你能分享你的模型设计吗?你的 asp.net core 版本是什么?
-
@Rena,我已经添加了我的模型并且正在使用 3.1 版。谢谢
标签: c# asp.net-core asp.net-core-webapi xmlserializer inputformatter