加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-web-api – 有没有办法在ASP.Net Web API中别名响应模型

发布时间:2020-12-15 18:33:35 所属栏目:asp.Net 来源:网络整理
导读:如果要使用JSON样式的小写名称从Web Api中的操作方法返回对象,是否有一种方法来将属性名称进行别名,以便下面的C#对象如下所示。 C#响应模型 public class Account { public int Id { get; set; } public string AccountName { get; set; } public decimal
如果要使用JSON样式的小写名称从Web Api中的操作方法返回对象,是否有一种方法来将属性名称进行别名,以便下面的C#对象如下所示。

C#响应模型

public class Account
    {
        public int Id { get; set; }
        public string AccountName { get; set; }
        public decimal AccountBalance { get; set; }

    }

我想要返回的JSON

{
        "id" : 12,"account-name" : "Primary Checking","account-balance" : 1000
    }

解决方法

您可以使用JSON.NET的JsonProperty
public class Account
    {
        [JsonProperty(PropertyName="id")]
        public int Id { get; set; }
        [JsonProperty(PropertyName="account-name")]
        public string AccountName { get; set; }
        [JsonProperty(PropertyName="account-balance")]
        public decimal AccountBalance { get; set; }   
    }

这只适用于JSON.NET – 显然。如果你想要更不可知,并且有这种类型的命名能够使其他潜在的格式化程序(即你将JSON.NET更改为别的东西,或者将XML序列化),请参考System.Runtime.Serialization并使用:

[DataContract]
 public class Account
    {
        [DataMember(Name="id")]
        public int Id { get; set; }
        [DataMember(Name="account-name")]
        public string AccountName { get; set; }
        [DataMember(Name="account-balance")]
        public decimal AccountBalance { get; set; }   
    }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读