我正在使用 WEB API 返回一个对象(类)。
类已经使用 System.Xml.Serialization 属性进行结构化,这使得使用 WEB API 返回整个类变得困难,因为它公开的内容超出了应有的范围。我不认为这是序列化类并返回字符串的解决方案,所以我想返回一个可序列化的对象。
这是我的班级的一个简短示例
[XmlIgnore]
[System.Xml.Serialization.XmlAttributeAttribute()]
public SettingEnums.currencyCodesEnum currency
{
get;
set;
}
[XmlAttributeAttribute("currency")]
public string Serializablecurrency
{
get { return this.currency.ToString(); }
set { }
}
如何返回遵循此类中定义的序列化属性的可序列化对象?
ASP.NET Web API 确实使用在类级别定义的序列化属性。然而,XmlMediaTypeFormatter
uses DataContractSerializer
默认情况下。既然你正在使用XmlSerializer
,你需要告诉Web API使用相同的,就像这样。
GlobalConfiguration.Configuration.Formatters
.XmlFormatter.UseXmlSerializer = true;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)