.docドキュメントをSQL Serverデータベースに保存するにはどうすればよいですか
-
26-10-2019 - |
質問
.docファイルをSQL Serverデータベースに保存しています。 varbinary(max)
以下のC#コードを使用します。
ファイルを保存することができますが、ファイルを取得してWebページにコンテンツを表示したいとき、私のコードはファイルをダウンロードしており、それを処理する方法について非常に混乱しています。
私が探している正確な機能は方法です naukri.com 履歴書をアップロードして、そのプレビューを提供します。私のコードは次のとおりです。
byte[] fileContent = new byte[fuResume.PostedFile.ContentLength];
fuResume.PostedFile.InputStream.Read(fileContent, 0, fuResume.PostedFile.ContentLength);
//lblAppliedMessage.Text = ByteArrayToString(fileContent);
//lblAppliedMessage.Text = BitConverter.ToString(fileContent).Replace("-", string.Empty);
byte[] btYourDoc;
btYourDoc = fileContent;
Response.ContentType = "application/ms-word";
Response.AddHeader("Content-Disposition", "inline;filename=yourfilename.doc");
Response.OutputStream.Write(btYourDoc, 0, fileContent.Length);
Response.BinaryWrite(btYourDoc);
Response.End();
解決
スクイルマンは正しい。 Word-> HTML変換を行うサードパーティのコンポーネントがたくさんあります。
イントラネットサイトに適している可能性のあるもう1つのオプションは、サーバーに単語をインストールすることです。
この例はここにあります:
http://www.c-sharpcorner.com/uploadfile/munnamax/wordtohtml03252007065157am/wordtohtml.aspx
効果的に、ドキュメントが開かれ、HTMLとして保存され、その後のリクエストはプレビュー用のファイルのHTMLバージョンを取得できます。
Office Automation Server側には多くの落とし穴があります - 参照 http://support.microsoft.com/kb/257757 詳細については。
他のヒント
ファイルが表示される代わりにダウンロードされている理由は、コンテンツタイプをアプリケーション/MSワードに設定しているためです。これにより、ブラウザがファイルをダウンロードするように指示されます(そのタイプのファイルをネイティブに処理することはできないため、外部アプリに委任します)。
MS Word形式を解釈し、それをブラウザで表示可能なものに変換する方法を知っているコードが必要です(HTML、それを行うプラグインなど)。 Raw Wordドキュメントを保存してから、同じ状態でクライアントに送信することは、基本的に単語ファイルをダウンロードするだけです。
ファイルをダウンロードするか表示するかをユーザー次第です。 これがリンクです しかし、@squillmanは、ダウンロードするように言っている応答ヘッダーを配置することです。