JSON web-api 上公开的对象 - 如何阻止属性名称更改大小写?

2023-11-26

我有一个如下所示的对象模型:

public class Product
{
    public string ProductCode { get; set; }
    public string ProductInfo { get; set; }
}

我通过 Dapper 填充它,并将其公开给 angular.js 使用者,但 JSON 中的属性名称显示为:

{
     "productCode": 1,
     "productInfo": "Product number 1"
}

特别注意驼峰式情况。我希望它与原始声明的名称相匹配,即

{
     "ProductCode": 1,
     "ProductInfo": "Product number 1"
}

我怎样才能做到这一点?


在幕后,Web-API 很可能使用 JSON.Net 作为 JSON 序列化引擎;这意味着您可以使用 JSON.Net 的属性来控制输出,例如:

public class Product
{
    [JsonProperty("ProductCode")]
    public string ProductCode { get; set; }
    [JsonProperty("ProductInfo")]
    public string ProductInfo { get; set; }
}

如果没有这些,JSON.Net 将使用约定和配置 - 以及通常的 JSON 约定is使用驼峰式大小写,因此这是默认值。你can也可能会更改默认配置,但我建议不要这样做,除非您了解影响的范围。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JSON web-api 上公开的对象 - 如何阻止属性名称更改大小写? 的相关文章

  • 为什么我应该在 ASP .Net MVC 应用程序中放弃使用 HTTPContext 会话状态的形式?

    我记得读过一些地方 人们不鼓励在 ASP Net Web 应用程序中使用 HTTPContext Current Session 状态 有人可以解释一下最近这一趋势背后的一些原因吗 A这有可靠的技术原因吗 谢谢 约翰 B 首先 MVC 不是
  • 如何在特定时间以毫秒精度触发 C# 函数?

    我有两台计算机 它们的时间通过 NTP 同步 确保时间仅相差几毫秒 其中一台计算机将通过 TCP 向另一台计算机发送一条消息 以在两台计算机上的未来指定时间启动某个 c 函数 我的问题是 如何在特定时间以毫秒精度 或更好 触发 C 中的函数
  • 使用 Json.NET 序列化子类

    我正在尝试使用 Json NET 序列化子类 生成的 json 包含超类的序列化属性 但是not子类对象的属性 这似乎与我发现的一个问题有关这里就这样 https stackoverflow com q 5863496 498969 但必须
  • 自动映射器多对多 stackoverflowException

    我遇到以下映射的堆栈溢出 Mapper CreateMap
  • 深拷贝和动态转换 unique_ptr

    假设我有一个如下所示的类 class A virtual A class B public A class C public A 我还有一个 unique ptr 向量 它是这样声明的 std vector
  • 将公历日期转换为儒略日期,然后再转换回来(随着时间)

    我正在编写一个程序 必须将当前的公历日期和时间转换为儒略日期 然后再转换回公历门 最终我需要添加能够添加年 月 日 小时 分钟和秒的功能 但我需要先解决这部分问题 现在我已经从公历日期转换为儒略日期 所以从逻辑上讲 我觉得我应该能够以某种方
  • 最新 .Net MongoDb.Driver 的连接问题

    我创建了一个 MongoLab 沙箱数据库 我与 MongoChef 连接 效果很好 我通过 Nuget 安装了 MongoDB Driver 2 2 2 我编写了一些简单的 C 演示代码 但就是无法使其工作 连接字符串是直接从 Mongo
  • 局部函数声明有什么用处吗?

    大多数像我这样的 C 程序员都曾犯过以下错误 class C int main C c declares a function c taking no arguments returning a C not as intended by m
  • Dapper 在执行时挂起

    我有一个 IDb连接 sql UPDATE 表名 SET json json lastupdate SYSDATE WHERE id id var param new DynamicParameters param Add json jso
  • 如何从 Qt 应用程序通过 ODBC 连接到 MySQL 数据库?

    我有一个新安装的 MySQL 服务器 它监听 localhost 3306 从 Qt 应用程序连接到它的正确方法是什么 原来我需要将MySQL添加到ODBC数据源 我在遵循这个视频教程后做到了这一点 https youtu be K3GZi
  • Visual Studio 中列表框的上移、下移按钮[重复]

    这个问题在这里已经有答案了 我正在尝试制作一个上移按钮和一个下移按钮 以移动 Microsoft Visual Studio 2012 中列表框中的选定项目 我已经在 WDF jquery winforms 和其他一些表单中看到了其他示例
  • 如何将 Q 格式整数转换为浮点数(反之亦然)?

    我四处搜寻 找不到一个很好的问题来回答这个问题 给定一个整数 使用Q Format https en wikipedia org wiki Q number format 如何将该数字转换为普通浮点类型 反之亦然 如何将浮点类型转换为Q F
  • 如何让XmlReader读取C#中的属性?

    我有一个 XML Stream 其中包含以下 XML 内容
  • C#:自定义转换为值类型

    是否可以将自定义类转换为值类型 这是一个例子 var x new Foo var y int x Does not compile 是否有可能实现上述情况 我需要超载一些东西吗Foo 您将必须重载强制转换运算符 public class F
  • Gremlin.net 文本包含等效项

    我正在使用 Gremlin net 库连接到 janus 图形服务器 我使用 cassandra 和弹性搜索进行数据存储和索引 在我使用的 gremlin 语言和 gremlin 控制台中文本包含在属性的文本中进行搜索 我正在使用混合索引
  • C++ 中是否有与 PHP 的explode() 函数等效的函数? [复制]

    这个问题在这里已经有答案了 可能的重复 在 C 中分割字符串 https stackoverflow com questions 236129 splitting a string in c 在 PHP 中 explode 函数将获取一个字
  • 具有四个 && 的 LINQ Where 子句

    我正在尝试在Where 子句中创建一个带有4 个参数的LINQ 查询 这是一个 Windows 8 应用程序项目 我正在使用 SQLite 数据库 SQLite 实现 https github com praeclarum sqlite n
  • 表单帖子上的 asp.net mvc 编码

    我在我的 asp net mvc 表单 带有文本区域的 nicedit 中使用富文本编辑器 当我在帖子上提交表单时 因为它不是 html 编码的 我收到以下消息 从客户端检测到潜在危险的 Request Form 值 如何对 post 上的
  • 实体框架代码首次日期字段创建

    我正在使用实体框架代码优先方法来创建我的数据库表 下面的代码 创建一个DATETIME数据库中的列 但我想创建一个DATE柱子 DataType DataType Date DisplayFormatAttribute ApplyForma
  • 如何使用 C# 为 azure devops 变量赋值

    我有 selenium C 测试脚本 可以从浏览器获取令牌 我有两个 azure devops 任务 一个用于执行 selenium 测试 另一个用于执行 API 测试 我想将 selenium 测试获取的令牌传递给 API 测试执行任务

随机推荐

  • 使用 Pandas 从另一个数据帧中删除一个数据帧

    我有两个不同大小的数据框 df1 nad df2 我想从中删除df1存储在其中的所有行df2 所以如果我有df2等于 A B 0 wer 6 1 tyu 7 And df1等于 A B C 0 qwe 5 a 1 wer 6 s 2 wer
  • 删除R中tmap中的图例

    我有一个简单的问题 如何删除 R 中 tmap 中自动添加的图例 在这种情况下 我想删除右侧描述 级别 的图例 这是我尝试过的 tm shape densities polygons tm polygons col level palett
  • matlab:将向量划分为固定大小的重叠块

    我有一个向量 我想将其拆分为大小重叠的子向量cs轮流在sh 想象输入向量是 v 1 2 3 4 5 6 7 8 9 10 11 12 13 A 1 13 given a chunksize of 4 cs 4 和 2 sh 2 结果应如下所
  • 调用未定义函数curl_init()错误

    我在 Win 64 位操作系统 php 5 6 8 上使用 Eclipse PDT 来开发 PHP 我遇到过 Call to undefined function curl init 错误 我删除了 前extension php curl
  • D3D11:如何绘制简单的像素对齐线?

    我尝试用 D3D11 在两个顶点之间画一条线 我在 D3D9 和 D3D11 中有一些经验 但在 D3D11 中绘制一条线 从一个给定像素开始并以另一个像素结束 似乎是一个问题 我做了什么 我向每个顶点的像素坐标添加了 0 5f 以适应纹素
  • CakePHP如何通过ID数组获取多行

    我想根据 ID 数组列表从数据库中提取多行 在其他一些框架中似乎有类似 WHERE IN 的东西 但这里没有 有人可以告诉我该怎么做吗 我想知道如何通过 find 或 read 或任何其他 cakephp 函数 来做到这一点 而不是手动构建
  • Rails 库包括

    关于 lib 目录中定义的模块 我有一个令人费解的问题 我有两个文件 lib authentication rb module Authentication end lib test module rb module TestModule
  • HttpServlet 类与 Jersey 一起使用之间的混淆

    我正在构建实现 RESTful API 的 servlet 我知道 Jersey 是一个用于破译和使用给定 URL 的框架 我如何将它与HttpServlet class 我不明白两者如何相互合作 我想这是一个非常笼统的问题 但我已经阅读了
  • Python google Drive API下载,文件在哪里?

    我使用此处找到的 python 代码在谷歌驱动器上下载文件 https developers google com drive v3 web manage downloads我有这个范围 https www googleapis com a
  • GridView.scrollTo() 的解决方法?

    如上所述here Android的GridView scrollTo 不起作用 解决方案提到的方法 setSelectedPosition 似乎不存在于GridView smoothScrollToPosition确实有效 但我真的不想要动
  • pyqt qt4 QTableView如何禁用某些列的排序?

    所以我有一个 QTableView 我只想让列排序在第 1 列而不是第 2 列 自然地我尝试installEventFilter on QHeaderView or QTableView but MouseButtonPress事件不会被传
  • Rails link_to 方法: :delete

    我很抱歉问了一个可能是补救问题的问题 但在学习 Rails 时 我试图遵循本教程中的注释 http guides rubyonrails org getting started html 昨晚我在本教程中发布了一个类似的问题 并得到了及时的
  • Django 模板中的字典

    我有这样的看法 info dict u Question 1 13365 13344 u Question 2 13365 u Question 3 for key in info dict for k v in key items pro
  • JSON.NET 作为 WebAPI 2 OData 序列化器与 ODataMediaTypeFormatter

    我正在尝试使用 JSON NET 作为 WebAPI 2 堆栈中的默认序列化器 我已经实现了 JsonMediaTypeFormatter 其中使用 JSON NET 序列化器来序列化 反序列化数据 并创建了 JsonContentNego
  • Python Inspect.stack 很慢

    我只是在分析我的 Python 程序 看看为什么它看起来相当慢 我发现它的大部分运行时间都花在了inspect stack 方法 用于输出带有模块和行号的调试消息 每次调用 0 005 秒 这看起来相当高 是inspect stack真的这
  • 使用 django 表单保存新的外键

    我有两个模型 class Studio models Model name models CharField Studio max length 30 unique True class Film models Model studio m
  • 在易出错的初始化程序 swift 1.2 中分配 let 变量

    我有一个带有错误初始化程序的结构 不是实例方法 而是初始化程序 更新到 1 2 后 当我尝试分配let初始化程序内的属性 我收到以下错误Cannot assign to aspectRatio in self 我的代码如下 import F
  • 在Python中,如何解码GZIP编码?

    我在 python 脚本中下载了一个网页 在大多数情况下 这工作得很好 然而 这个有一个响应头 GZIP 编码 当我尝试打印这个网页的源代码时 它在我的腻子中包含了所有符号 如何将其解码为常规文本 我使用 zlib 从网络上解压缩 gzip
  • 滑动菜单将触摸事件锁定在上视图上

    我正在尝试使用滑动菜单在我的应用程序中 在我的 Sony Xperia S 上 它工作得非常好 但是当我尝试在 HTC Desire HD 上启动应用程序时 菜单可以通过手势完美打开 但其他触摸事件被阻止并且顶视图 ViewPager 滑动
  • JSON web-api 上公开的对象 - 如何阻止属性名称更改大小写?

    我有一个如下所示的对象模型 public class Product public string ProductCode get set public string ProductInfo get set 我通过 Dapper 填充它 并将