我有一些文件路径如下所示:
StreamReader fileStream = new StreamReader(@"C:\Projects\SisStuff\SIS\SIS.Core\Models\CreateEditTemplate.cshtml");
现在我想删除c:Project \ SisStuff部分以使其独立于我的计算机中的文件路径,我尝试@“〜\ Models \ CreateEditTemplate.cshtml”但是在调试文件夹中找到它,我该怎么办?让它工作?
答案 0 :(得分:2)
这种能够跨系统工作的唯一方法是构建一个已知的系统变量。例如,您可以使用%windir%
获取Windows目录吗?那是因为它是一个定义良好的系统变量。
但是,如果您只是想到达项目的根目录,那么您可以记住,始终将从您正在执行的目录开始。因此,在visual studio中运行时,您需要(假设您使用项目模板中的默认路径设置)..\..\Models\CreateEditTemplate.cshtml
。
但是,如果由于某种原因需要在生产中使用它,它可能看起来更像..\Models\CreateEditTemplate.cshtml
,因为默认情况下,生产中只需要一个bin
文件夹,您需要从中升级。