如何将C#字节数组转换为要粘贴在SQL脚本中的二进制字符串?

时间:2019-02-09 23:41:46

标签: c# sql-server

请清楚一点,我不是要直接从C#插入SQL Server。

我想将C#字节数组转换为二进制字符串,以便可以将其粘贴到SQL脚本中,如下所示:

insert into Files (FileId, FileData) values (1, 0x010203040506)

我该怎么做?

1 个答案:

答案 0 :(得分:1)

Binary constants在SQL Server中“具有前缀0x,并且是十六进制数字的字符串”。

您可以使用"x2" format string将每个字节转换为十六进制,然后将结果与String.Join()合并:

var bytes = new byte[] {1, 2, 3, 4, 5, 6};
var binaryString = "0x" + string.Join("", bytes.Select(b => b.ToString("x2")));