我試圖構建一個網站,您可以在其中上傳.pptx文件,並檢查一些方面(例如,幻燈片計數)。我有Open XML SDK 2.5,並添加了對它的引用。但是,當我嘗試使用SDK中的命令時,它們不可用。使用Open XML SDK讀取已上傳的pptx文件
(另外,我真的需要一個內存流處理文件?我不想來存儲文件,只是從中提取了一些細節。)
我的代碼是在VB,但我可以閱讀C#太:
Partial Class uploadpresentation
Inherits System.Web.UI.Page
Protected Sub Upload_Click(sender As Object, e As EventArgs) Handles Upload.Click
If PptxUpload.HasFile AndAlso PptxUpload.FileName.EndsWith(".pptx") Then
ProcessFile(PptxUpload.PostedFile)
End If
End Sub
Sub ProcessFile(ByVal pptxFile As HttpPostedFile)
using (MemoryStream memoryStream = new MemoryStream())
Using doc As PresentationDocument = PresentationDocument.Open(fileName, False)
outputMessage = "Number of slides: " & argh
End Sub
End Class
我的web.config有這樣的:
<assemblies>
<add assembly="DocumentFormat.OpenXml, Version=2.5.5631.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="WindowsBase, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</assemblies>
所以,無論是MemoryStream的,也不PresentationDocument是公認的。我在這裏錯過了什麼?
非常感謝!
就是這樣。我已經添加了參考資料,但完全忘記了導入部分。在過去的2年裏,我一直在使用VBA進行「編程」,並且它傷害了我的大腦。這就像我必須重新學習重新編程。謝謝您的幫助。我覺得自己像個白癡。 – vacip
另外,我正在使用dll-s。使用gac有什麼優勢嗎?這將是一個非常基本的登陸網站,有一個aspx頁面,一些javascript,就是這樣。 – vacip
通常使用dll比較好,否則你將不得不在服務器上安裝OpenXml –