我想将Guids存储在不支持Guid / uniqueidentifier数据类型的数据库中,因此我使用.ToByteArray()方法将Guid转换为字节数组。但是,此方法以存储方式转换值:
11223344-5566-7788-9900-AABBCCDDEEFF
will become
44, 33, 22, 11, 66, 55, 88, 77, 99, 00, AA, BB, CC, DD, EE, FF
据我了解,这是因为字节顺序。
我想知道这个方法是否会在每个平台(86x硬件,64x硬件,Linux,Windows等)上返回相同的结果,并且无论在哪个平台上运行我的软件,都不会有字节顺序的变化。
答案 0 :(得分:4)
对于你的问题:
对于所有平台,我想知道这个方法是否会返回相同的结果 每个平台(86x硬件,64x硬件,Linux,Windows等)
是它将是相同的。
但是,此方法以存储方式转换值:
从ToByteArray
返回的顺序与字符串表示不同。
请注意,返回的字节数组中的字节顺序为 与Guid值的字符串表示形式不同。命令 开头的四字节组和接下来的两个双字节组是 反转,而最后两个字节组的顺序和结束 六字节组是相同的。