Google フォームのような動的フォーム サイトを作成しました。要件の 1 つは、各調査に、調査フォームを印刷した後に印刷する必要がある Word ファイルを添付できることです。
では、データベースからファイルをダウンロードした後、印刷するにはどうすればよいでしょうか?
コード例:
private void downloadFile()
{
string item = Request.Form["__EVENTARGUMENT"].ToString();
SQL sql_files = new SQL(ConnectionStringName.FilesSqlServer);
sql_files.ExecuteStoreProcedure(SqlStoreProcedureNames.spFileStorage, SqlOutputType.DataReader, new SQLParameter[]{
new SQLParameter(ParameterDirection.Input, SqlDbType.VarChar, "@IdRespuesta", Session["id_respuesta"].ToString()),
new SQLParameter(ParameterDirection.Input, SqlDbType.VarChar, "@ItemID", item),
new SQLParameter(ParameterDirection.Output, SqlDbType.VarChar, "@SpError")
});
if (sql_files.Reader.HasRows)
{
sql_files.Reader.Read();
Response.ClearContent();
Response.AddHeader("Content-Disposition", "attachment; filename=" + sql_files.Reader["name"].ToString());
Response.ContentType = sql_files.Reader["contenttype"].ToString();
byte[] fileBytes = (byte[])sql_files.Reader["bytes"];
Response.AddHeader("Content-Length", fileBytes.Length.ToString());
Response.BinaryWrite(fileBytes);
Response.Flush();
Response.End();
}
sql_files.Reader.Close();
}
このコードを使用してファイルをダウンロードするので、Word 文書を印刷できるようにコードを変更する必要があります。
ごきげんよう、クラーク