我有一個作業列表,我給用戶選擇以PDF文件的形式獲取作業描述。我使用MigraDoc/PDFsharp生成PDF文件。 問題是,在我渲染PDF文檔並想將其保存在DevServer的某處後,我在創建FilesharkPdfDocument.Save()方法時發生UnauthorizedAccessException。 我從來沒有真正用過任何比玩遊戲更先進的Windows,我不知道爲什麼我會得到這個異常,因爲我以管理員用戶身份登錄,我想我的ASP.NET應用程序正在用管理員權限運行,應該能夠在文件系統的任何地方寫入文件。ASP.NET生成.pdf文件,保存()上的UnauthorizedAccessException
該守則。
GridViewRow jobRow = (GridViewRow)(sender as Control).Parent.Parent;
Document jobDocument = new Document();
Section xyz = jobDocument.AddSection();
xyz.AddParagraph("Wonderfull job");
PdfDocumentRenderer pdfRenderer = new PdfDocumentRenderer(true);
pdfRenderer.Document = jobDocument;
pdfRenderer.RenderDocument();
string filename = "Job_" + jobRow["3"] + ".pdf"; // Job_[title].pdf
pdfRenderer.PdfDocument.Save(filename);
最後一行是導致異常的行。 有什麼建議嗎?我不是ASP.NET開發人員,而且我被迫爲我的學校項目使用ASP.NET,所以這可能是一個非常簡單的問題,但我真的不知道該做什麼以及要搜索什麼。謝謝回答!
我不是100%確定,但我不使用IIS。我使用Visual Studio 2010附帶的默認Web服務器(不確定它是否與IIS有任何關係)。我忘了提及我試圖在我的網站根目錄之外寫入文件,並且沒有任何問題。 – Viktor 2012-04-10 09:39:24
然後將「everyone」的訪問權限授予您的應用程序目錄/到PDF應保存的目錄。 右鍵點擊文件夾 - >屬性 - >安全/權限 - >編輯 - >完全訪問所有人。 (也許翻譯是錯誤的) – jordi 2012-04-10 10:15:50
它的工作,我覺得現在和白癡...... :) – Viktor 2012-04-10 12:31:56