-1

我正在尝试获取相对路径,例如:C:\somedirectory\someproject\someproject.Business\somefolder\

我试过了Path.GetFullPath(Application.StartupPath)。但它返回 DevServer 的文件夹。

4

3 回答 3

2

我假设您已将解决方案分隔在不同的项目中,并且您至少拥有:

  • 业务层
  • Web应用程序

从上面的信息来看,您似乎正在尝试访问位于业务层中的文件夹。但是您可能正在执行来自 Web 服务器应用程序的代码,这就是为什么之前的答案都不起作用的原因。

如果它是您尝试访问的某个文件,我建议您在 Visual Studio 中更改文件/文件夹构建操作。这将自动将文件复制到应用程序运行的正确上下文中。 在此处输入图像描述

BuildAction 属性指示在执行构建时 Visual Studio 对文件执行的操作。BuildAction 可以具有以下几个值之一:

- 文件不包含在项目输出组中,并且不在构建过程中编译。一个示例是包含文档的文本文件,例如自述文件。

编译- 文件被编译到构建输出中。此设置用于代码文件。

内容- 文件未编译,但包含在内容输出组中。例如,此设置是 .htm 或其他类型的 Web 文件的默认值。

嵌入式资源- 此文件作为 DLL 或可执行文件嵌入到主项目构建输出中。它通常用于资源文件。

您可以阅读有关 msdn 上构建操作的更多信息:http: //msdn.microsoft.com/en-us/library/0c6xyb66 (v=vs.80).aspx

于 2012-07-25T08:57:51.433 回答
1

怎么样

Server.Mappath(string path);
于 2012-07-25T06:08:05.137 回答
0

请使用Directory.GetCurrentDirectory方法

该方法返回一个字符串,其中包含当前工作目录的路径,并且不以反斜杠 () 结尾。

于 2012-07-25T06:30:05.657 回答