2011-12-21 46 views
0

嗨到文件夾我有許多項目的解決方案在我MVC3應用 其中一個項目是控制檯。我需要從這個控制檯獲得完整的路徑來上傳web項目中的文件夾。 我該怎麼做?獲取完整路徑的另一個項目

var path = System.IO.Path.GetFullPath("~/Content/Upload"); //return wrong path... 

回答

1

你不能,最好的方法是在你的上傳文件夾的完整路徑的控制檯應用程序的app.config中放置一個鍵。

+0

我試過了。但是這是Controller服務。服務器不在控制檯應用程序識別:( – 2011-12-21 15:46:46

+0

這隻會是一個Web請求的情況下有效,否則你會得到一個HttpException。 – Strillo 2011-12-21 15:47:25

+0

所以沒有辦法讓路徑從控制檯 – 2011-12-21 15:48:42

1

你不能從一個控制檯應用程序訪問Web應用程序的路徑,只是因爲它們是同一個解決方案的一部分。

Server.MapPath只能在一個Web服務器的上下文中,並且需要一個web請求來驗證和確定的根目錄。

你可能需要查看您的設計,或者,如:

  1. 店在配置文件夾的詳細信息或共享文件,註冊表項或數據庫
  2. 將它作爲參數傳遞給控制檯應用程序
  3. 修改Web應用程序提供Web服務,然後從控制檯應用程序調用它,如果你使用的web應用程序App_Data PA
+0

ok了。感謝同志 – 2011-12-21 15:54:24

0

我@Strillo但同意的解決方案可以很容易在app.config中定義的控制檯應用程序中的第p個文件夾。所有應用程序都嘗試訪問相同的文件夾。

+0

你能給我舉例我如何在app.config中寫路徑? – 2011-12-21 16:19:47

+0

你可以在不同的文件管理你的配置,你應該在你的主要的app.config它們定義爲<的appSettings configSource =「App_Data文件\ CONFIGS \ AppKeys.config 「/> 2012-07-02 13:51:36