Saving Word document directly in database

Is there a way to get the binary representation of the document object for saving directly in a database?

In other words I don’t want to execute document.save and download the file to my computer, I want the server to push the generated file directly to the database.

Thanks,
Mirek

Hi
Thanks fro your request. Yes of course you can do this. Please see the following code examples.

/// 
/// This example shows how to write document into the database.
/// 
public void Example002()
{
    // Create connction
    string connectionString = "server=Web1;database=TestDB;uid=sa;pwd=pass;";
    System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection(connectionString);
    // Open the DOC file using Aspose.Words.
    Document doc = new Document(@"C:\Temp\in.doc");
    // ...You can merge data/manipulate document content here.
    MemoryStream stream = new MemoryStream();
    // Save document to memorystream
    doc.Save(stream, SaveFormat.Doc);
    // Create sql command
    string commandString = "INSERT INTO [Documents] VALUES(@Doc)";
    System.Data.SqlClient.SqlCommand command = new System.Data.SqlClient.SqlCommand(commandString, conn);
    // Add paramenter @Doc
    command.Parameters.AddWithValue("Doc", stream.GetBuffer());
    // Open connection
    conn.Open();
    // Write document to DB
    command.ExecuteNonQuery();
    // Close DB connection
    conn.Close();
}
/// 
/// This example shows how to read document from the database.
/// 
public void Example003()
{
    // Create connction
    string connectionString = "server=Web1;database=TestDB;uid=sa;pwd=pass;";
    System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection(connectionString);
    // Create DataSet
    DataSet ds = new DataSet();
    // Create sql command
    string commandString = "SELECT Document FROM Documents WHERE ID=2";
    System.Data.SqlClient.SqlCommand command = new System.Data.SqlClient.SqlCommand(commandString, conn);
    // Create data adapter
    System.Data.SqlClient.SqlDataAdapter adapter = new System.Data.SqlClient.SqlDataAdapter(command);
    // Open connection
    conn.Open();
    // Read dataset
    adapter.Fill(ds);
    conn.Close();
    // Save document to hard disk
    if (ds.Tables.Count > 0)
    {
        if (ds.Tables[0].Rows.Count > 0)
        {
            byte[] buffer = (byte[])ds.Tables[0].Rows[0][0];
            MemoryStream stream = new MemoryStream(buffer);
            Document doc = new Document(stream);
            doc.Save(@"C:\Temp\out.doc");
        }
    }
}

I hop this could help you.
Best regards.

Thanks Alexey, this is exactly what I needed.

Mirek