2010-07-09 54 views
0

我想在Windows窗体应用程序中使用xml文件。我在我的项目中添加了一个新的xml文件。当我像这样引用这个文件xmlDataDoc.DataSet.ReadXml("~\TestLog.xml");我该如何告诉它看看这个项目中的xml文件?我放在上面的行不起作用。什么是在VS项目中引用应用程序路径的最短途径?

+0

你是如何添加它的?您是否将构建操作设置为“复制,如果更新”? – Oded 2010-07-09 15:26:50

回答

1

这将非常依赖于应用程序的类型。在ASP.NET应用程序假设该文件被部署在站点根目录,你可以这样做:

string filePath = Server.MapPath("~/testlog.xml"); 

在一个控制台应用程序,假设你将文件复制到输出文件夹(Copy to Output Directory:在文件的属性Copy Always )在为可执行文件,你可以使用相对路径一样的地方:

string filePath = "testlog.xml"; 

为了让你可以使用这个当前执行的程序集的位置:

string location = Assembly.GetExecutingAssembly().Location; 

,然后一个相对路径构建到此位置:

string filePath = Path.Combine(location, "testlog.xml"); 

实现同样的事情,该选哪一个的许多方面取决于您的上下文。