WebApi,文件存在但找不到文件,IIS 始终从"C:Program Files (x86)IIS Express"文件夹中读取



我有一个Web API解决方案,其中包含一个包含配置文件的文件夹(请参阅此处显示配置文件的解决方案资源管理器的图像(

代码中的路径名为:

public const string CONFIGFILEPATH = "VTS_Data\Config.vts";
public const string BCSEQUENCEFILEPATH = "VTS_Data\BCSequenceNumber.xml";
public const string OPCCONFIGFILEPATH = "VTS_Data\OPCTagConfiguration.das";

应用程序始终从路径读取"C:Program Files (x86)IIS Express" 。如果我手动将VTS_Data文件夹放在此路径"C:Program Files (x86)IIS Express",该应用程序可以正常工作。

但是,它如何从实际预期的路径中获取配置?

此外,当它作为 IIS 站点托管时,VTS_Data文件夹需要存在于 IISExpress 文件夹中。

当我调试时,我尝试使用(HttpContext.Current.Server.MapPath(Constants.CONFIGFILEPATH))从路径读取。 当我调试时,它指的是实际的物理路径,但即使文件存在,File.Exists也会返回 false。

我已经完全控制了每个人,并确保文件不是只读的。

任何帮助将不胜感激。提前谢谢你

当我创建一个变量var baseDir = HttpContext.Current.Server.MapPath("~/VTS_Data")并使用 var OPCConfigurationFilePath = Path.Combine(baseDir , OPCTagConfiguration.das);它开始工作了。似乎以前它已经指向一个文件夹,并在里面搜索另一个同名的文件夹。例如,它不是指向文件夹名称/abc.txt,而是指向文件夹名称/文件夹名称/abc.txt

相关内容

  • 没有找到相关文章

最新更新