如何将动态对象转换为 JSON 字符串 C#?

2024-03-25

我有以下从第三方库获得的动态对象:

IOrderStore os = ss.GetService<IOrderStore>();
IOrderInfo search = os.Orders.Where(t => t.Number == "test").FirstOrDefault();
IOrder orderFound = os.OpenOrder(search, true);

dynamic order = (dynamic)orderFound;
dynamic requirements = order.Title.Commitments[0].Requirements;

我需要将其解析为 JSON 字符串。

我尝试了这个(使用 JSON.net):

string jsonString = JsonConvert.SerializeObject(requirements);
return jsonString;

但我得到了一个看似损坏的 JSON 字符串,如下所示:

[{"$id":"1"},{"$id":"2"},{"$id":"3"},{"$id":"4"},{"$id" :"5"},{"$id":"6"},{"$id":"7"},{"$id":"8"},{"$id":"9"}, {"$id":"10"},{"$id":"11"},{"$id":"12"},{"$id":"13"},{"$id": "14"},{"$id":"15"}]

该对象包含多个属性,而不仅仅是“id”。

有什么建议吗?


你有没有尝试过使用var代替dynamic?

// Use "var" in the declaration below.
var requirements = order.Title.Commitments[0].Requirements;
string jsonString = JsonConvert.SerializeObject(requirements);

当你只想反序列化时requirements如果不对其进行任何其他操作,则无需使用它dynamically.

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

如何将动态对象转换为 JSON 字符串 C#? 的相关文章

随机推荐

  • 如何从对象数组中提取属性并对其进行切片?

    所以我有一个对象数组 它返回电话号码 业务号码和名称 我正在尝试提取businessNumber 和phoneNumber 并希望将它们从 中切片以仅显示最后4 位数字 我能够使用地图来提取businessNumber 但是我如何拆分并以所
  • 自动完成“不是一个函数”

    我们已经在一个简单的 HTML 页面中测试了 Jquery UI jquery ui 1 8 10 custom min js 自动完成功能 该功能有效 然后 我们将相同的代码复制到 Asp net 用户控件中 它就会停止工作 Javasc
  • C# 中 RAM 耗尽时会发生什么?

    我不是计算机专家 所以让我尝试更具体地提出这个问题 我做了一些科学计算 计算有时需要大量内存来存储结果 几天前 我的输出文件占用了 4 GB 的硬盘空间 但我有这么大的 RAM 所以 当您运行的程序分配的内存多于计算机中可用的内存时 CLR
  • 如何将毫秒转换为日期字符串?

    我从服务器得到一个毫秒字符串 如下所示 1345623261 我如何将其转换为正常的日期格式 例如2012 年 8 月 30 日 我尝试使用setMilliseconds 像这样 new Date setMilliseconds time
  • 用不同的猜名称猜数字游戏

    这是我第一次使用 stackoverflow 进行访问 我是编程新手 正在学习 Python 初学者课程 很高兴开始 我们的第二个作业要求我们创建著名的猜数字游戏 对于那些已经了解这个游戏的人 我希望对添加到其中的额外部分提供一些帮助 我们
  • Robolectric junit 测试 - 缺少互联网许可

    我正在为 ma 应用程序开发一些 JUnit 测试 我需要使用 Robolectric Roboguice 库 我现在想做的只是简单的测试 检查 Activity 是否不为空 这是我的代码 RunWith RobolectricGradle
  • VS 解决方案文件的 Windows 资源管理器上下文菜单中的“构建”项?

    我想知道为什么默认情况下不集成它 我希望在 VS 解决方案文件的 Windows 资源管理器的文件上下文菜单中有一个项目来构建它 有这个工具吗 或者我必须自己创建这个 MSBuild Shell 扩展已经存在多年了 http msbuild
  • Jackson 反序列化抽象类

    我正在尝试使用 JSON ObjectMapper 反序列化对象 尝试反序列化时我看到以下错误 com fasterxml jackson databind JsonMappingException 无法构造 com phoenix typ
  • 如何隐藏微调器下拉菜单android

    我想隐藏外部点击时弹出的微调提示 如果提示弹出窗口打开并且用户按主页键活动将最小化 因此当用户再次打开应用程序时 提示弹出窗口应该消失 有什么办法可以实现这一点吗 谢谢 编辑 提示弹出窗口未自定义 所以我不能把它们藏起来onPause or
  • 为什么 Postgres 复制流在单独的函数中使用时不起作用?

    我正在研究 postgres 复制流 API 在处理它的过程中遇到了异常行为 当我使用复制槽在主块内编写整个代码时 一切正常 public class Server implements Config public static void
  • 如何使用LocalBroadcastManager?

    如何使用 定位LocalBroadcastManager如中所述谷歌文档 http developer android com reference android support v4 content LocalBroadcastManag
  • 我可以按顺序链接异步任务吗(在上一个异步任务完成后开始一个)

    每次我做一个httpRequest 当代码执行时 屏幕会被锁定几秒钟 因此我用了AsyncTask做我所有的httpRequest东西在一个单独的线程 同时提出ProgressDialog所以用户知道发生了什么事 我最近遇到了以下情况 我的
  • 角-聚合物相互作用

    我计划尝试 AngularJS 中的一个项目 其中所有组件都将使用 Polymer 开发 在开始这个项目之前 我有几个疑问 使用 Angular 服务获取数据后 我可以更新 Polymer 组件数据模型 也可以通过 UI 吗 如果是 那么如
  • 之前和之后的样式输入范围

    我正在关注这个方法 http css tricks com styling cross browser compatible range inputs css 来自 CSS Tricks 来设置输入范围的样式 并尝试使用之前和之后的伪类 下
  • Breeze JS - 带有 EFContextProvider 的存储库,启用/禁用 OData 过滤

    我正在寻找使用微风 EFContextProvider 实现存储库模式 在此存储库中 我将公开一种使用 OData 过滤来查询数据库的方法 就像默认情况下微风的行为一样 我还想公开一个忽略 OData 过滤的方法 并返回一个元素列表 就好像
  • 检测所有摄像头android

    我有一个使用 Camera2 API 来获取相机预览的应用程序 我想在手机的镜头之间进行选择 在我的代码中 我使用以下代码 CameraManager manager CameraManager activity getSystemServ
  • 按数字顺序对目录中的文件进行排序和列出

    这是我的文件夹结构 home files encounters 9 22 11 0 jpg home files encounters 9 22 11 n jpg puts Dir glob home files jpg 0 当我执行上面的
  • Money_format() 选项

    我正在查看 php 中的 Money format 函数 并对如何让它按照我想要的方式格式化感到困惑 我不想在字符串前面有 USD 我想要每 3 位数字和 2 位小数点有一个逗号 因此 12345 67 将被格式化为 12 345 67 T
  • 如何创建接受可变数量参数的 Java 方法?

    比如Java自己的String format 支持可变数量的参数 String format Hello s ABC d World 123 gt Hello World ABC 123 如何创建自己的函数来接受可变数量的参数 后续问题 我
  • 如何将动态对象转换为 JSON 字符串 C#?

    我有以下从第三方库获得的动态对象 IOrderStore os ss GetService