Extrair um byte [] a partir de um XElement com Linq para XML
-
11-07-2019 - |
Pergunta
Eu estou salvando algumas pequenas imagens para XML como um byte [] através do seguinte construção XElement ..
XElement xe = new XElement("Images",
from c in qry
select new XElement("Image", new XAttribute("Date", c.Date),
new XElement("Data", c.Bytes)));
a propriedade Bytes é um byte [], olhando para o elemento resultante das conteúdo da matriz parecem ser salvo apenas peachy.
O meu problema é que eu não consigo ler isso de volta simplesmente. Qual é a melhor maneira de recuperar esse elemento? Typecasting a um Byte [parece não ser permitido], eu estou realmente vai ter que ler isso como uma string? Descobrir o que a codificação para usar e convertido? Parece-me que uma vez que XElement entendida como escrever a matriz, ele deve ser capaz de lê-lo também.
Solução
Gostaria de pensar sobre Base64 que codifica a matriz de bytes. Deve ser razoavelmente fácil de codificar / decodificar esta de / para um array de bytes.
Outras dicas
Este foi muito útil, obrigado. Para um ver amostra de codificação:
http://www.nowan.hu /main.aspx?content=9cff1555-26ca-4e6a-910b-6a73463e22b2