C# Newtonsoft JSON 库在不同计算机上为同一数据集输出不同的错误 JSON 键

2023-12-02

我不知道如何解决这个问题。我能想到的解决这个问题的方法是,我的开发机器工作完美是 32 位,其他测试的计算机是 64 位(顺便说一句,我周围没有其他 32 位机器可以测试)。无论如何,这是一个奇怪的场景。

现在来说说这个问题:

我在用Newtonsoft JSON 库在我的 C# 应用程序中。我有以下 C# 类要序列化:

class sync_object
    {

        //newtonJson give bad keys to these object names on 64bit systems

        public Dictionary<string, List<Dictionary<string, string>>> table_records { get; set; }
        public Dictionary<string, List<string>> class_list_with_subjects_offered { get; set; }
        public Dictionary<string, List<string>> class_list_with_scoreheads_offered { get; set; }
        public List<string> class_groups_ordered { get; set; }
    }

创建实例后sync_object并用数据填充它,我做了JsonConvert.SerializeObject(instance_of_sync_object)并发送到我的服务器。然后,当我记录服务器端(Laravel PHP)收到的 JSON 时,我得到了一个完美的 JSON 转储到 PHP 中,如下所示:

array ( 'table_records' => array ( 'personal_db' => array (...) ) , 'class_groups' => array(...) )

然而,在另外 2 台计算机(我的应用程序用户)上,我得到与上面相同的 JSON 结构,但唯一的区别是所有第一级 JSON 键(如上面的“table_groups”和“class_groups_ordered”)都被替换为以下奇怪的字符(您可能需要使用光标选择它以观察它包含许多不可打印的字符):

'‮‫‫‮‮‌​‎​‭‎‏‮‎​‎‪‭‪​‍‮‬‌‏‬‮' => 

正如我之前提到的,这些计算机和我的计算机之间唯一明显的区别是我的计算机是 32 位计算机,而他们的计算机是 64 位计算机。

另外,作为提供更多信息的一种方式,由于 JSON 转储是在我的 Laravel 后端中使用 Monolog 完成的,因此我可以查看 Chrome 中的 DOM 检查器,如下所示:

My normal JSON: enter image description here

The weird JSON from the other guys: enter image description here

所有这些计算机上都运行相同的 Newtonsoft Json 库。


本能地,我将所有 Snake_case 对象属性名称更改为 PascalCase,噩梦就结束了!

(注:我没有找到任何关于Newtonsoft JSON 文档这表明属性名称的大小写在数据序列化中很重要)

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

C# Newtonsoft JSON 库在不同计算机上为同一数据集输出不同的错误 JSON 键 的相关文章

  • 未提供参数时如何指定 C# System.Commandline 行为?

    在我的控制台应用程序中 当未提供控制台参数时 将执行我指定列表 在本例中为参数 3 的任何处理程序 调用该处理程序时 布尔参数设置为 false 但对我来说 根本不调用它更有意义 如何防止这种情况发生并显示帮助文本 using System
  • 如何在c++中读取pcap文件来获取数据包信息?

    我想用 C 编写一个程序来读取 pcap 文件并获取数据包的信息 例如 len sourc ip flags 等 现在我找到了如下代码 我认为它会帮助我获取信息 但是我有一些疑问 首先我想知道应该将哪个库添加到我的程序中 然后什么是 pca
  • 如何让 Swagger 插件在自托管服务堆栈中工作

    我已经用 github 上提供的示例重新提出了这个问题 并为任何想要自己运行代码的人提供了一个下拉框下载链接 Swagger 无法在自托管 ServiceStack 服务上工作 https stackoverflow com questio
  • 计算 Richtextbox 中所有单词的最有效方法是什么?

    我正在编写一个文本编辑器 需要提供实时字数统计 现在我正在使用这个扩展方法 public static int WordCount this string s s s TrimEnd if String IsNullOrEmpty s re
  • ClickOnce 应用程序错误:部署和应用程序没有匹配的安全区域

    我在 IE 中使用 FireFox 和 Chrome 的 ClickOnce 应用程序时遇到问题 它工作正常 异常的详细信息是 PLATFORM VERSION INFO Windows 6 1 7600 0 Win32NT Common
  • 在 C 中匹配二进制模式

    我目前正在开发一个 C 程序 需要解析一些定制的数据结构 幸运的是我知道它们是如何构造的 但是我不确定如何在 C 中实现我的解析器 每个结构的长度都是 32 位 并且每个结构都可以通过其二进制签名来识别 举个例子 有两个我感兴趣的特定结构
  • 为什么极端下派生类(多重虚拟继承)的大小包括超类成员大小的两倍?

    include
  • 使用 LINQ2SQL 在 ASP.NET MVC 中的各种模型存储库之间共享数据上下文

    我的应用程序中有 2 个存储库 每个存储库都有自己的数据上下文对象 最终结果是我尝试将从一个存储库检索到的对象附加到从另一个存储库检索到的对象 这会导致异常 Use 构造函数注入将 DataContext 注入每个存储库 public cl
  • 获取两个工作日之间的天数差异

    这听起来很简单 但我不明白其中的意义 那么获取两次之间的天数的最简单方法是什么DayOfWeeks当第一个是起点时 如果下一个工作日较早 则应考虑在下周 The DayOfWeek 枚举 http 20 20 5B1 5D 3a 20htt
  • java.io.Serialized 在 C/C++ 中的等价物是什么?

    C C 的等价物是什么java io Serialized https docs oracle com javase 7 docs api java io Serializable html 有对序列化库的引用 用 C 序列化数据结构 ht
  • 回发后刷新时提示确认表单重新提交。我做错了什么?

    我有一个以空白 默认状态启动的仪表板 我让用户能够将保存的状态加载到仪表板中 当他们单击 应用 按钮时 我运行以下代码 function CloseAndSave var radUpload find radUpload1ID var in
  • 在 C 中初始化变量

    我知道有时如果你不初始化int 如果打印整数 您将得到一个随机数 但将所有内容初始化为零似乎有点愚蠢 我问这个问题是因为我正在评论我的 C 项目 而且我对缩进非常直接 并且它可以完全编译 90 90 谢谢 Stackoverflow 但我想
  • qdbusxml2cpp 未知类型

    在使用 qdbusxml2cpp 程序将以下 xml 转换为 Qt 类时 我收到此错误 qdbusxml2cpp c ObjectManager a ObjectManager ObjectManager cpp xml object ma
  • 具有交替类型的可变参数模板参数包

    我想知道是否可以使用参数包捕获交替参数模式 例如 template
  • DbContext 和 ObjectContext 有什么区别

    From MSDN 表示工作单元和存储库模式的组合 使您能够查询数据库并将更改分组在一起 然后将这些更改作为一个单元写回存储 DbContext在概念上类似于ObjectContext 我虽然DbContext只处理与数据库的连接以及针对数
  • 如何在 Xaml 文本中添加电子邮件链接?

    我在 Windows Phone 8 应用程序中有一些大文本 我希望其中有电子邮件链接 例如 mailto 功能 这是代码的一部分
  • Azure 辅助角色“请求输入之一超出范围”的内部异常。

    我在辅助角色中调用 CloudTableClient CreateTableIfNotExist 方法 但收到一个异常 其中包含 请求输入之一超出范围 的内部异常 我做了一些研究 发现这是由于将表命名为非法表名引起的 但是 我尝试为我的表命
  • 动态添加 ASP.Net 控件

    我有一个存储过程 它根据数据库中存储的记录数返回多行 现在我想有一种方法来创建 div 带有包含该行值的控件的标记 如果从数据库返回 10 行 则 10 div 必须创建标签 我有下面的代码来从数据库中获取结果 但我不知道如何从这里继续 S
  • 方法优化 - C#

    我开发了一种方法 允许我通过参数传入表 字符串 列数组 字符串 和值数组 对象 然后使用这些参数创建参数化查询 虽然它工作得很好 但代码的长度以及多个 for 循环散发出一种代码味道 特别是我觉得我用来在列和值之间插入逗号的方法可以用不同的
  • 如何从 ODBC 连接获取可用表的列表?

    在 Excel 中 我可以转到 数据 gt 导入外部数据 gt 导入数据 然后选择要使用的数据源 然后在提供登录信息后 它会给我一个表格列表 我想知道如何使用 C 以编程方式获取该列表 您正在查询什么类型的数据源 SQL 服务器 使用权 看

随机推荐

  • 带回归线的 Seaborn 条形图

    有没有办法将回归线添加到seaborn中的条形图中 其中x轴包含pandas Timestamps 例如 在下面的条形图中叠加一条趋势线 我正在寻找最有效的方法来做到这一点 seaborn set style white context t
  • Tomcatlogging.properties格式化程序未生效

    我正在尝试调整卡特琳娜的日志记录 我的 Tomcat 的logging properties 看起来像 handlers 1catalina org apache juli FileHandler 2localhost org apache
  • VBA AES CBC 加密

    我在中提到了加密https github com susam aes vbs下面是我最终得到的代码 Function Min a b Min a If b lt a Then Min b End Function Function B64E
  • SQL Between 中 from 和 to 值的顺序

    我正在 SQL Server 中创建一个简单的过程 如下所示 DECLARE num int SET num 5 SELECT num WHERE num BETWEEN 1 AND 10 SELECT num WHERE num BETW
  • 如何使用 Spring RestTemplate POST 表单数据?

    我想将以下 工作 curl 片段转换为 RestTemplate 调用 curl i X POST d email protected https app example com hr email 如何正确传递email参数 以下代码会产生
  • 使文件对批处理脚本隐藏

    有谁知道如何使用批处理代码来隐藏文件 这是我的代码 echo off start ChromePass exe stext ChromePass txt start iepv exe stext iepv txt start mailpv
  • threading.Timer 通过基本清理控制来终止长时间运行的任务

    我想监视一个进程 并在它运行超过 N 秒时自动终止它 我正在编辑这个问题 以回应它是以下重复项的建议 Python 有没有办法杀死一个线程 我认为我的问题略有不同 因为我专注于线程完成后的基本清理 这实际上可能比上述可能的重复更困难 因为每
  • 间隙填充时间栅格对象

    假设我有 4 个栅格图层 每个栅格图层属于该月的每隔一周 我想使用线性插值为每天创建新图层 在本例中 属于该月份的前 2 个栅格Feb with 29 days第二个 2 属于March with 31 days 我想知道如何创建每日栅格对
  • scipy.optimize.minimize 没有给出最小值,即使它看到该值

    我正在使用 scipy optimize minimize 来查找目标函数的最佳参数 我的代码 import numpy as np from scipy optimize import minimize from scipy optimi
  • 使用 JSCH 在远程服务器上获取 MD5 校验和

    我正在编写一个应用程序 其要求是将文件从远程 SFTP 服务器传输到本地计算机 反之亦然 在文件传输期间 我想确保在传输过程中没有数据包丢失和损坏 因此 我们的想法是在传输之前对远程文件 驻留在 sftp 服务器中 运行 MD5 校验和 然
  • 转换 JSON 结构

    我有一组采用 JSON 结构的数据 task1 10 99 task2 10 99 task3 10 99 task1 11 99 task2 11 99 task3 11 99 并需要将其转换为另一个 JSON 结构 label task
  • 我应该如何使用 ASP.NET MVC 路由实现本地化?

    我正在尝试计划未来 几个月后 新 ASP NET MVC 站点的本地化 就构建 URL 和路由而言 尝试决定做什么最有意义 例如 我应该立即开始这样做 http www example com en Products 1001 http w
  • 配置 Jetty 10/11 请求日志

    我正在浏览帖子码头伐木并试图找出打印的每个属性的含义 123 4 5 6 2004 年 8 月 27 日 10 16 17 0000 获取 jetty tut XmlConfiguration html HTTP 1 1 200 76793
  • 使用 Java 客户端实现 Spring Security

    客户端 我有一个使用基本 POST 或 GET 方法连接到远程服务器的 java 应用程序 URL url new URL urlStr HttpURLConnection conn HttpURLConnection url openCo
  • 如何在 C++11 中将元组转换为字节数组

    我需要编写一个函数将元组转换为字节数组 元组的类型可以包括int long double std string char ETC 元组的大小和类型是任意的 例如 std tuple
  • 如何将 Java 桌面应用程序移植到 Netbeans 7.1

    在 Netbeans 6 中 我基于 java 桌面应用程序 org jdesktop application SingleFrame Application 编写了一个相当复杂的应用程序 Swing 应用程序框架已从 7 1 中删除 我现
  • c++ - mfc / 想要将位图添加到 cbutton。 CButton 没有成员 setBitmap 并且 BM_SETIMAGE 也不能用于 sendMessage

    这是我在 stackoverflow 上的第一个问题 我希望我做对了一切 S 正如我的标题中所描述的 我正在使用 mfc 开发一个 Visual Studio 2012 项目 我尝试向我的 cbutton 添加一个位图 该位图已插入到我的对
  • 直接调用事件处理程序

    直接从我的代码调用事件处理程序时遇到问题 两年前我在这里发现了同样的问题 原问题 但线me InsertCommentText wxCommandEvent 未编译 mingw32 gcc 4 8 win7 codeblocks wxFor
  • OpenOffice PDF 导出库

    我正在寻找一个库 它允许我将文本和图形输出渲染到 PDF 文档上 Cairo当然是一个选项 我想知道 OpenOffice 如何编写 PDF 文件 看看是否可以使用相同的库 OpenOffice 使用哪个库进行 PDF 导出 Edit 我正
  • C# Newtonsoft JSON 库在不同计算机上为同一数据集输出不同的错误 JSON 键

    我不知道如何解决这个问题 我能想到的解决这个问题的方法是 我的开发机器工作完美是 32 位 其他测试的计算机是 64 位 顺便说一句 我周围没有其他 32 位机器可以测试 无论如何 这是一个奇怪的场景 现在来说说这个问题 我在用Newton