Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为什么EntityFramework修剪UTF编码的字符串?_C#_Sql_Entity Framework - Fatal编程技术网

C# 为什么EntityFramework修剪UTF编码的字符串?

C# 为什么EntityFramework修剪UTF编码的字符串?,c#,sql,entity-framework,C#,Sql,Entity Framework,"�\0\0ID\0\0\0\0NJ\0SchemaVersion\0\0\0\0RequestType\0\0\0\0\n“ 当使用EntityFramework保存到数据库时,上面的字符串被剪切为单个字符的长度�' EntityFramework是否在幕后修剪字符串?可能是为了防止SQL注入 更多信息: 我获得了一个长的UTF8编码字符串,并试图使用EntityFramework将其保存到SQLServer数据库中。目标列的数据类型为nvarchar(max)&EF映射到C#is strin

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

当使用EntityFramework保存到数据库时,上面的字符串被剪切为单个字符的长度�'

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

更多信息:

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


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

问题在于编码字符串中有大量
'\0'
字符。它被视为标识字符串结尾的空字符


因此,我必须在字符数组中处理这些字符来处理它。

似乎您希望将二进制数据保存为字符串。您是否看到了EF生成的SQL插入?使用SQL探查器查看SQL EF生成的内容
Encoding.UTF8.GetString(inBytes, 0, inBytes.Length)