[英]Why is my debug not working in Visual Studio? (c#) [on hold]
[英].NET c#: Why does Visual studio expect me to put my files in c:\…\myConsoleApplication\bin\Debug
我是.NET編程的新手,嘗試加載位於項目根目錄中的xml文件時遇到以下異常。 有人可以向我解釋為什么該程序在bin文件夾中尋找我的文件嗎? 這是例外:
mscorlib.dll中發生了類型為'System.IO.FileNotFoundException'的未處理異常。其他信息:文件'c:\\ users \\ u957974 \\ documents \\ visual studio 2015 \\ Projects \\ XMLINQConsoleApplication \\ XMLINQConsoleApplication \\ bin \\ Debug \\ contacts.xml'找不到est。
Visual Studio不知道您的應用程序需要該文件才能運行。 你必須告訴它。
為此,請在解決方案資源管理器中右鍵單擊該文件。 選擇“屬性”。
在“屬性”下,找到“復制到輸出目錄”,然后選擇“如果更新則復制”。
因為那是程序輸出的編譯位置。 生成的.exe
文件(假設這是一個控制台應用程序)將在bin/Debug/
生成。
如果要從項目的根目錄加載文件,請使用相對路徑,例如XElement.Load("../../contacts.xml")
從當前目錄解析相對文件路徑。 從Visual Studio運行應用程序時,當前目錄是應用程序目錄。
但是請注意,當前目錄可以通過一些操作(例如OpenFileDialog)隨時更改
Bin文件夾是您創建的任何.Net項目的工作目錄。Bin文件夾包含所有已編譯的程序集。 它具有項目正在使用的所有引用的Dll和資源。 由於您尚未指定Xml文件的路徑,因此它正在嘗試在當前目錄中找到它,因此是異常。
您可以嘗試指定路徑,例如:
Xelement Xmldoc = XElement.Load("../../contacts.xml")
給這樣的道路
Xelement Xmldoc = Xelement.Load("~/COntracts.xml");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.