2016-04-18 5 views
1

Вы можете мне помочь? Я хочу сохранить отпечаток на mysql, это код, который я использую.Как Сериализовать-Deserialize отпечаток DigitalPersona u.ere.u 4500 в C# и сохранен в базе данных

private void enrollment_OnEnroll(DPCtlUruNet.EnrollmentControl enrollmentControl, DataResult<Fmd> result, int fingerPosition) 
    { 
     if (enrollmentControl.Reader != null) 
     { 
      ShowMessage("OnEnroll: " + enrollmentControl.Reader.Description.Name + ", finger " + fingerPosition); 
     } 
     else 
     { 
      ShowMessage("OnEnroll: lector no conectado, finger " + fingerPosition); 
     } 

     if (result != null && result.Data != null) 
     { 
      //valor de la huella serializada 

      string valores = Fmd.SerializeXml(result.Data); 
      MySqlConnection conexion = new MySqlConnection(_sender.cadena); 
      String sql = String.Format("insert into cliente (clave_cuenta, huella) values('{0}','{1}')", textBox1.Text, valores); 
      MySqlCommand comando = new MySqlCommand(sql, conexion);   
      try { 
       conexion.Open(); 
       comando.ExecuteNonQuery(); 
       conexion.Close(); 
       MessageBox.Show("La huella se guardo satisfactoriamente","Almacenada",buttons:MessageBoxButtons.OK); 
      } catch (Exception ex) { 
       MessageBox.Show(ex.Message); 
       throw; 
      } 
      conexion.Close(); 
      _sender.Fmds.Add(fingerPosition, result.Data);     

     } 

     btnCancel.Enabled = false; 

     // _sender.btnApruebaCompra.Enabled = true; 
    } 

это хранится в MySQL

<?xml version="1.0" encoding="UTF-8"?><Fid><Bytes>Rk1SACAyMAAA8gAz/v8AAAFlAYgAxADEAQAAAFYjQIEAZmBkQIEARl5kQMoBKE1jgM8BA0RhgMwAg0tcgNYAZKZcQIIBFB5bgOYA00FaQM8BQFVZQKAAtV9YgLUBEVFYgGUApXNWQOQBIkRUQL0A00RUgPoAckxTQLQAeKVTgG4AcwRTQQMAoKFSQMsA5ptQgMsA65tQQFAAk2xQQREAq0dQgHkA0RhOQEYAoxdCgI8A7Hg/gOEBP00+QFUA4B48gEoAwnQ6QJkA3aA2gJwBAXU2AQMA7UE1AJ0BE2szAQgA7EEuAJwBDqwtAQ4AY6MqAAA=</Bytes><Format>1769473</Format><Version>1.0.0</Version></Fid> 

Предполагается FMDs, но я не могу вернуть его к своей первоначальной форме.

как возврат к нормальной форме?

+1

String HuellaRecuperadabd = datos.Tables ["cliente"]. Строки [0] ["huella"]. ToString(); Fmd.DeserializeXml (HuellaRecuperadabd); –

ответ

1
string x = Fmd.SerializeXml(fmd); 

магазин x в базе данных как строка.

получить строку и передать в

Fmd val = Fmd.DeserializeXml (извлеченной строки из базы данных);

val для сравнения с вашим текущим входом.