Pregunta

¿cómo recupero la matriz de bytes almacenada en una columna entera en mi base de datos?

¿Primero lo caso como int, luego como byte []?

byte [] permissions = (byte) Convert.ToInt (dr [" myField "]);

?

¿Fue útil?

Solución

Bueno, los datos se almacenan como un número entero. ¿Cómo quieres convertir eso en una matriz de bytes? Dada una entrada de, digamos, 12345, ¿cuál debería ser la salida?

¿Por qué estás tratando de almacenar una matriz de bytes en una columna entera en primer lugar?

EDITAR: ahora que sabemos que básicamente son las banderas que buscas, no lo convertiría en una matriz de bytes, usaría una enumeración:

[Flags]
public enum Permissions
{
    Read = 1,
    Write = 2,
    Execute = 4,
    Guillotine = 8,
    Lynch = 16
    // etc
}

Entonces puedes lanzar:

Permissions permissions = (Permissions) (int) dr["Field"]
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top