首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XML和JSON结果显示了WEB API中常见类的不同结果

XML和JSON结果显示了WEB API中常见类的不同结果
EN

Stack Overflow用户
提问于 2015-09-04 11:29:47
回答 1查看 237关注 0票数 0

在我的WEB中,我得到了XML和Json的结果。效果很好。但是,当我从DB收集数据时,有些记录是空的。当转换到xml或json时,结果是不同的。用于输出的公共类是。

代码语言:javascript
复制
public  class items
{
    [JsonProperty(PropertyName = "frequency")]
    [XmlElement(ElementName = "frequency")]
    public string Frequency { get; set; }
    [JsonProperty(PropertyName = "modulation")]
    [XmlElement(ElementName = "modulation")]
    public string Modulation { get; set; }
}

转换发生在

代码语言:javascript
复制
var Station = new items
{
    Frequency = (mContent["frequency"] is DBNull) ? null : mContent["frequency"].ToString(),
    Modulation = (mContent["modulation"] is DBNull) ? null : mContent["modulation"].ToString(),
}

对于Json的结果,我得到了我真正想要的:

代码语言:javascript
复制
[{"items":[{"frequency":null,"modulation":null}]}]

XML显示

代码语言:javascript
复制
<items>
  <item/>
</items>

但我想

代码语言:javascript
复制
 <items>
  <item>
    <frequency/>
    <modulation/>
 </item>
</items>

怎么能这么做?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-04 11:46:39

我认为您可能希望使用XmlElementAttribute.IsNullable属性:

代码语言:javascript
复制
public  class items
{
    [JsonProperty(PropertyName = "frequency")]
    [XmlElement(ElementName = "frequency", IsNullable = true)]
    public string Frequency { get; set; }
    [JsonProperty(PropertyName = "modulation")]
    [XmlElement(ElementName = "modulation", IsNullable = true)]
    public string Modulation { get; set; }
}

然后你应该得到:

代码语言:javascript
复制
<items>
  <item>
    <frequency xsi:nil = "true" />
    <modulation xsi:nil = "true" />
 </item>
</items>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32397004

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档