Frage

Ich speichere eine .doc -Datei in einer SQL Server -Datenbank als varbinary(max) Verwenden des C# -Coders unten.

Ich bin in der Lage, die Datei zu speichern, aber wenn ich die Datei zurückrufe und die Inhalte auf der Webseite anzeigen möchte, lädt mein Code die Datei herunter und ich bin in großer Verwirrung darüber, wie ich damit umgehen soll.

Die genaue Funktionalität, die ich suche, ist der Weg naukri.com Laden Sie den Lebenslauf hoch und gibt eine Vorschau dazu. Mein Code ist:

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();
War es hilfreich?

Lösung

Squillman hat recht. Es gibt Unmengen von Komponenten von Drittanbietern, die Wort -> HTML -Konvertierung durchführen.

Eine weitere Option, die für eine Intranet -Site besser geeignet ist, besteht darin, Wörter auf dem Server zu installieren.

Ein Beispiel dafür ist hier:

http://www.c-sharpcorner.com/uploadfile/munnamax/wordtohtml03252007065157am/wordtohtml.aspx

Effektiv wird das DOC geöffnet, als HTML gespeichert, dann können nachfolgende Anforderungen die HTML -Version der Datei für die Vorschau abrufen.

Office Automation Server -Seite hat jedoch viele Fallstricke - siehe http://support.microsoft.com/kb/257757 für mehr Informationen.

Andere Tipps

Der Grund, warum Ihre Datei heruntergeladen wird, anstatt angezeigt zu werden, liegt darin, dass Sie den Inhaltstyp auf Anwendung/MS-Wort einstellen. Dies gibt einem Browser an, die Datei herunterzuladen (sie können keine Dateien dieses Typs nativ verarbeiten, damit er an eine externe App delegiert).

Sie müssen Code haben, der weiß, wie man das MS -Word -Format interpretiert und in etwas in einem Browser zu sehen ist (HTML, ein Plugin, das dies für Sie tut usw.). Das Speichern des RAW -Word -Dokuments und das Anschicken Sie es dann im selben Zustand an den Client zurück, wenn Sie sie nur eine Word -Datei herunterladen.

Hier ist eine gute, bei der das Endergebnis dem Benutzer liegt, ob die Datei heruntergeladen oder angezeigt werden soll Hier ist der Link Aber @Squillman ist Recht, indem Sie die Antwort -Header, die Sie ihm zum Herunterladen sagen, eingesetzt werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top