在VB.net中反序列化数字角色模板
从数据库中读取二进制数据,我需要将其转换回数字角色指纹模板。我不熟悉序列化和反序列化,所以我需要一些帮助。以下是我尝试过的:在VB.net中反序列化数字角色模板,vb.net,serialization,fingerprint,Vb.net,Serialization,Fingerprint,从数据库中读取二进制数据,我需要将其转换回数字角色指纹模板。我不熟悉序列化和反序列化,所以我需要一些帮助。以下是我尝试过的: Dim rsBioData As SqlDataReader = SQL.ExecuteReader Dim byteTemplate As Byte Dim memStreamTemplate As MemoryStream If rsBioData.HasRows Then While rsBioData.Read byteTemplate =
Dim rsBioData As SqlDataReader = SQL.ExecuteReader
Dim byteTemplate As Byte
Dim memStreamTemplate As MemoryStream
If rsBioData.HasRows Then
While rsBioData.Read
byteTemplate = rsBioData("BiometricData")
memStreamTemplate = New MemoryStream(byteTemplate)
Me.Template = DirectCast(template.DeSerialize(memStreamTemplate), DPFP.Template)
End While
End If
rsBioData.Close()
我收到一个错误,该模板。反序列化(memStreamTemplate)不会创建值
下面是我如何序列化对象以将其放入数据库的步骤。我假设这部分工作正常,因为二进制数据显示在SQL server中--只是无法将其读回查看
Dim str As New MemoryStream
Enroller.Template.Serialize(str)
Dim serializedTemplate As Byte() = str.ToArray()
SQL.Parameters.AddWithValue("biometricData", serializedTemplate)
谢谢以下是我最终能够做到这一点的方法。我第一次是如此接近
byteTemplate = rsBioData("BiometricData")
memStreamTemplate = New MemoryStream(byteTemplate)
Me.Template.DeSerialize(memStreamTemplate)
提供完整的异常详细信息。无异常。它被编译器捕获。