Vb.net 数字人物序列化

Vb.net 数字人物序列化,vb.net,serialization,digital-persona-sdk,Vb.net,Serialization,Digital Persona Sdk,这里遇到一个小问题,我不知道哪里的代码错了 Private Sub SimpleButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SimpleButton1.Click Dim str As New MemoryStream Dim Serializetemplate As New DPFP.Template Serializetemplate.Ser

这里遇到一个小问题,我不知道哪里的代码错了

    Private Sub SimpleButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SimpleButton1.Click
    Dim str As New MemoryStream
    Dim Serializetemplate As New DPFP.Template
    Serializetemplate.Serialize(str)
    Dim serializedTemplate As Byte() = str.ToArray()

    'save to database
    opencon1()
    Dim cmd As MySql.Data.MySqlClient.MySqlCommand
    cmd = New MySql.Data.MySqlClient.MySqlCommand
    cmd.Parameters.AddWithValue("?imagedata", serializedTemplate)
    cmd.Parameters.AddWithValue("?userid", txtEmpid.Text)
    cmd.CommandText = "UPDATE master SET fp1=?imagedata WHERE userid=?userid"
    cmd.CommandType = CommandType.Text
    cmd.Connection = con1
    cmd.ExecuteNonQuery()
End Sub
我在Serializetemplate.Serialize(str)处遇到错误,错误消息为序列化错误


有人遇到过这个错误并解决了吗?

Joseph我对VB不是很在行,但据我所知,您正在声明一个新的DPFP.Template,然后将其序列化到内存流中。你为什么这么做

如果您正在注册或验证SDK,我们将在事件处理程序上为您提供模板

private void Enrolled(object Control, int Finger, DPFP.Template Template, ref DPFP.Gui.EventHandlerStatus Status)
{
   if (Status == DPFP.Gui.EventHandlerStatus.Success)
   {
      // Here you can use the template as  Template.Bytes
   }
}
模板已序列化为字节[]


我认为,如果您只是创建模板(空白),那么当您尝试序列化时,它会抛出异常。

如果我不声明新的DPFP.template,我将得到一个错误“对象引用未设置为对象的实例”这就是我不明白的地方,我在codeSure的顶部将这个私有模板声明为DPFP.Template,但这就是错误所在@JosephGoh,最近创建的模板无法序列化,因为它是空的。你为什么要创建这个新模板?该模板必须来自生物识别传感器,或者在存储后必须从repo加载。我不明白你为什么要实例化一个新的。如果需要空对象,只需将存储模板的字节[]指定为null。