Tengo algunos problemas para cargar archivos desde Memory Stream a la base de datos (está visible en DB como 0x, así que supongo que no se guarda correctamente). No estoy seguro de si se trata de un problema con la creación de Stream o si guardar en db from stream debe hacerse de manera diferente.Uso de MemoryStream para guardar el archivo .docx C#
private void test {
byte[] storage = new byte[500000];
using (MemoryStream stream = new MemoryStream(storage))
DocX documentWord = DocX.Create(stream);
// some stuff
documentWord.Save();
databaseFilePut(stream);
}
public static void databaseFilePut(MemoryStream stream) {
byte[] file;
using (var reader = new BinaryReader(stream)) {
file = reader.ReadBytes((int) stream.Length);
// reader.Close();
}
//stream.Close();
//}
using (var varConnection = Locale.sqlConnectOneTime(Locale.sqlDataConnectionDetailsDZP))
using (var sqlWrite = new SqlCommand("INSERT INTO Raporty (RaportPlik) Values(@File)", varConnection)) {
sqlWrite.Parameters.Add("@File", SqlDbType.VarBinary, file.Length).Value = file;
sqlWrite.ExecuteNonQuery();
}
}
¿Qué estoy haciendo mal? Estoy usando la biblioteca Codeplex de Docx.
Gracias. Sabía que me faltaba algo :-) – MadBoy