2014-12-09 106 views
0

我在我的web應用程序中有幾個不同類型的項目。其中一些是MyApp.UnitTests,MyApp.UserInterfaceTests,MyApp.Web ...如何獲取VS項目子文件夾的路徑?

所有這些在C:\Projects\MyApp文件夾中都有相應的文件夾。有一個名爲Images的子文件夾,其中MyApp.UserInterfaceTests - C:\Projects\MyApp\MyApp.UserInterfaceTests\Images,其中存儲了一些我想用於測試的圖像。

如何獲取此文件夾的路徑?

var dir = AppDomain.CurrentDomain.BaseDirectory;返回程序集的路徑,但是有沒有辦法在解決方案中獲取基礎項目文件夾的路徑?

+0

如果您絕對必須在測試中使用圖像,最好將它們作爲資源嵌入到測試DLL中,這樣您就不必擔心特定於環境的事情,如文件路徑。 – 2014-12-09 11:48:42

回答

1

您可以通過

filePath = AppDomain.CurrentDomain.BaseDirectory + "\\Images\\"+imagename.extension; 

得到的文件夾,但它會更好地附上您的資源,如圖像,RESX文件等的類庫和dll引用訪問這些。如果將來發生變化,這種方法可以管理模塊化。

其他方式是,如果您使用的是數據庫,然後將base64形式的圖像存儲在數據庫中。並在渲染時轉換回原始形式。

+0

要採取子文件夾內的文件的方法,您必須在解決方案資源管理器中右鍵單擊該文件,然後選擇屬性 - 複製到輸出目錄 - 如果更新,則複製。 – Oliver 2014-12-10 07:37:03

相關問題