gpt4 book ai didi

c# - 为什么 EntityFramework 会删除 UTF 编码的字符串?

转载 作者:太空宇宙 更新时间:2023-11-03 13:18:47 25 4
gpt4 key购买 nike

Encoding.UTF8.GetString(inBytes, 0, inBytes.Length)

“�\0\0ID\0\0\0\0NJ\0SchemaVersion\0\0\0\0RequestType\0\0\0\0\n”

使用 EntityFramework 将上述字符串保存到数据库时被裁剪为单个字符“�”

EntityFramework 是否在幕后修剪字符串?可能是为了防止 SQL 注入(inject)!

更多信息:

我获得了一个 UTF8 编码的长字符串,并尝试使用 Entity Framework 将其保存到 SQL Server 数据库中。目标列的数据类型为 nvarchar(max) & EF 映射到 C# 是字符串。

我在 quick watch 中查找了这个变量,并正确分配给了 dbcontext 表属性。

最佳答案

问题是编码字符串中有很多 '\0' 字符。它被视为标识字符串结尾的空字符。

所以我不得不在字符数组中处理这些字符来处理它。

关于c# - 为什么 EntityFramework 会删除 UTF 编码的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25080682/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com