不熟悉ASP.NET我不确定我的问题的最佳解决方案.我有一行代码如:
xDoc.Load("Templates/template1.cfg");
Run Code Online (Sandbox Code Playgroud)
xDoc是一个XmlDocument.在我的项目中,在顶层有一个名为Templates的目录.当我在调试模式下运行项目时,我得到了一个DirectoryNotFoundException,显然它正在寻找模板目录C:\Program Files\Common Files\Microsoft Shared\DevServer\10.0\Templates.
如何在没有硬编码的情况下正确指向该目录?
Adr*_*ode 17
Server.MapPath - 返回相对路径的路径; ~确保相对路径与应用程序根相关
xDoc.Load(Server.MapPath("~/Templates/template.cfg"));
Run Code Online (Sandbox Code Playgroud)
Joe*_*Joe 10
我可能会用
xDoc.Load(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Templates", "Template.cfg"));
Run Code Online (Sandbox Code Playgroud)
这使您的XML加载代码独立于ASP.NET.如果您要在Windows窗体应用程序中重复使用它,则会提供相对于包含Windows窗体可执行文件的目录的路径.
| 归档时间: |
|
| 查看次数: |
20963 次 |
| 最近记录: |