2016-08-02 61 views
-1

場景: 我正在使用Asp.net Web Api並使用Jsreport作爲可使用cmd進行安裝的報告工具。這裏有幾個步驟。 1.首先安裝node和npm 2.打開cmd並運行cmd作爲「npm install jsreport」 3.使用cmd初始化爲「node node_modules/jsreport --production」 4.現在啓動報告服務器爲「npm start --production「在項目啓動期間安裝應用程序

這裏jsreport存在於應用程序文件夾目錄之外,我必須爲我的項目提供jsreport的路徑,以使我的東西完成,這似乎不太好。現在我要做的就是安裝應用程序(JsReport),當我的asp.net web api第一次啓動時,如果它(jsreport)不存在。我聽說過有關.bat文件,當我的項目啓動時,可以編寫這個文件來自動執行我的jsreport安裝,但我對此缺乏想法。

任何人都可以幫助我擺脫這個問題嗎? 在此先感謝。

+0

請閱讀:http://stackoverflow.com/help/how-to-ask –

回答

0

你可以用下面的方法實現這一目標:

  1. 壓縮您的本地安裝的節點應用(jsreport)到一個文件中
  2. 包括文件到您的解決方案
  3. 還包括node.exe在解決方案
  4. 設置爲兩個文件複製到輸出=總是
  5. 在應用程序啓動期間解壓縮zip
  6. 使用c運行進程「node.exe server.js」#

這與jsreport.Embedded的工作方式相同。

+0

它的罰款,直到第5步,但得到一個錯誤,當我運行像「System.Diagnostics.Process.Start(」節點的過程中出現錯誤。 exe server.js「);」....有什麼我失蹤?錯誤提示「系統找不到指定的文件。」 –

+0

您需要設置bin文件夾的完整路徑以及進程的工作目錄。檢查此https://github.com/jsreport/net/blob/0.8.1/jsreport/jsreport.Embedded/EmbeddedReportingServer.cs#L248 –

+0

現在它的工作...謝謝 –

相關問題