c# - 如何显示varBinary字段数据

标签 c# asp.net sql sql-server

我有一个数据类型为 varBinary 的数据库字段。现在我想在 gridView 中显示该数据。但我得到输出:

System.Byte[]

不是值

0x2C6D1A

它在数据库中。

请帮忙解决这个问题。

最佳答案

您可以使用BitConverter类来格式化字节数组以用于显示目的:

string forDisplay =
    "0x" + BitConverter.ToString(yourByteArray).Replace("-", string.Empty);

如果您不想直接转换为字符串,则 BitConverter has a load of methods用于从字节数组转换为各种其他类型。

编辑...

如果您将某些查询结果直接绑定(bind)到 GridView 控件,那么将 VARBINARY 列转换为 VARCHAR 可能会更容易在查询本身中:

SELECT CONVERT(VARCHAR(MAX), your_varbinary_column, 1) AS for_display
FROM your_table

(注意:这种类型的转换 - 从 '0x1234AB' 格式的 VARBINARYVARCHAR - 仅在 SQL 中正确工作Server 2008。早期版本的 SQL Server 只是将二进制数据直接转换为字符数据。)

关于c# - 如何显示varBinary字段数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/938705/

相关文章:

c# - 如何将列表复制到新列表,或在 C# 中按值检索列表

sql - Oracle SQL 如何解析连接条件中的限定名称

c# - 如何在 Visual Studio 2008 中创建用于 C# 应用程序的 .dll?

c# - 如何在 .NET 4.0 的 Entity Framework 中进行 "like"通配符比较?

c# - 在 C# asp.net 中按相同顺序对列表中的相似项目进行分组

c# - 如何从营业时间时段列表中禁用预订的时段

mysql - 如何在已创建的字段上创建具有累积功能的 MySQL 查询?

c# - 如何使 LINQ 执行 (SQL) LIKE 范围搜索

c# - Date 对象的有用扩展方法 C# 库

c# - NSArray 的、原始类型和拳击哦,我的天哪!