C# 无法将参数值从字符串转换为字节[]

C# 无法将参数值从字符串转换为字节[],c#,asp.net,ado.net,varbinarymax,C#,Asp.net,Ado.net,Varbinarymax,net代码,我在尝试以二进制格式插入字符串时遇到了这个问题 我有一个二进制格式的图像在贴花。贴花文件名和贴花。贴花文件名是定义一个字符串,所以当我试图作为 cmd.Parameters.Add(new SqlParameter("@DecalLogoFileName", SqlDbType.Binary)).Value=decal.DecalLogoFileName; decal.DecalLogoFileName="data:image/jpeg;base64,/9j/4AAQSkZJRgA

net代码,我在尝试以二进制格式插入字符串时遇到了这个问题

我有一个二进制格式的图像在贴花。贴花文件名和贴花。贴花文件名是定义一个字符串,所以当我试图作为

cmd.Parameters.Add(new SqlParameter("@DecalLogoFileName", SqlDbType.Binary)).Value=decal.DecalLogoFileName;

decal.DecalLogoFileName="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxITEhUTExIWFhUXGB8aGBcYGR0ZHxobGhoXHRcYGBkaHyghHRolHRcXIjEhJSkrLi4uGB8zODMtNygtLisBCgoKDg0OGhAQGy0lHyUtLS0tLS0tLS0tLS0tLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLf/AABEIALcBEwMBIgACEQEDEQH/xAAbAAACAwEBAQAAAAAAAAAAAAAEBQIDBgABB//EAEgQAAIBAgQDBQQHBQYDCAMAAAECEQADBBIhMQVBUQYTImFxMoGRoSNCUrHB0fAUcpLS4QczU2KCshVUc0Njg5OiwuLxFiRk/8QAGQEAAwEBAQAAAAAAAAAAAAAAAQIDAAQF/8QALBEAAgICAgECBQQCAwAAAAAAAAECERIhAzFBE2EiMlFxgUKhsdEEkSMzUv/aAAwDAQACEQMRAD8A"
我是贴花中的字符串值

function readURL(input) {
if (input.files && input.files[0]) {
        var reader = new FileReader();
        reader.onload = function (e) {
            $('#DecalLogo').attr('src', e.target.result);
            $('#hdImageName').val(e.target.result);
        }
        reader.readAsDataURL(input.files[0]);
    }
}
此处hdImageName值存储在贴花中。贴花文件名

我也试过了

cmd.Parameters.Add(new SqlParameter("@DecalLogoFileName", SqlDbType.Binary)).Value=Convert.toByte(decal.DecalLogoFileName);
但转换问题即将到来

sealLogoFileName的列数据类型设置为varbinary(MAX)

如下尝试

var byteArray = Encoding.ASCII.GetBytes(decal.DecalLogoFileName);
cmd.Parameters.Add(new SqlParameter("@DecalLogoFileName", SqlDbType.VarBinary, byteArray.Length)).Value=byteArray;
要从数据库检索图像,可以使用
Encoding.ASCII.GetString(byteArray)
将其转换为base64字符串。然后你可以像这样把图像放在imgsrc中

        <img src="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxITEhUTExIWFhUXGB8aGBcYGR0ZHxobGhoXHRcYGBkaHyghHRolHRcXIjEhJSkrLi4uGB8zODMtNygtLisBCgoKDg0OGhAQGy0lHyUtLS0tLS0tLS0tLS0tLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLf/AABEIALcBEwMBIgACEQEDEQH/xAAbAAACAwEBAQAAAAAAAAAAAAAEBQIDBgABB//EAEgQAAIBAgQDBQQHBQYDCAMAAAECEQADBBIhMQVBUQYTImFxMoGRoSNCUrHB0fAUcpLS4QczU2KCshVUc0Njg5OiwuLxFiRk/8QAGQEAAwEBAQAAAAAAAAAAAAAAAQIDAAQF/8QALBEAAgICAgECBQQCAwAAAAAAAAECERIhAzFBE2EiMlFxgUKhsdEEkSMzUv/aAAwDAQACEQMRAD8A" 
        alt="SampleImage" />


seal.sealLogoFileName仅具有正确的编码格式?这无关紧要。您必须将base64string转换为字节数组以在表中存储二进制格式。当您检索图像时,您应该将二进制文件转换为base64string。您能建议我如何从数据库中获取该格式,并在用户端将其再次显示为图像吗