2013-06-24 34 views
0

我可能要對這個錯誤的方式,但在我的Silverlight應用程序的網站組件我加了一些docx文件,併發布到IIS 7.5的時候都沒有用。在我的開發環境中,它工作的很好,我可以引用docx文件。每個docx文件具有「內容」構建操作,而「複製到輸出目錄」設置爲「始終複製」。當我構建解決方案時,我可以在適當的文件夾中查看本地開發機器上的docx文件。當我發佈到IIS時,docx文件無法在包含Web服務器上的網站的文件夾結構中找到。我嘗試手動將docx文件複製到Web服務器,但我的應用程序仍然無法看到它們。的docx文件不發佈到IIS

是否有我的docx文件更好的方式來拴住我的應用一騎當我發佈到IIS?

回答

1

我無法弄清楚如何獲得docx文件期間,發佈,複製,但是我發現了一個解決方法。如果將構建操作更改爲嵌入,則可以使用代碼引用這些文件。這是微軟如何對嵌入:

http://support.microsoft.com/kb/319292

要引用一個文件,使用這樣的:

// The Reporting.Web part is my namespace. Everything here is case sensitive! 
string template = "Reporting.Web.PerfRevH1.docx"; 
Assembly loader = Assembly.GetExecutingAssembly(); 
var rawstream = loader.GetManifestResourceStream(template); 
byte[] byteArray = rawstream.ReadToEnd(); 

要讀取流成字節數組,我曾經在這裏發現了一個擴展方法這個SO問題:How to convert an Stream into a byte[] in C#?