c# - 无法将文件写入 Directory.GetCurrentDirectory() 中的路径
问题描述
我试图通过在解决方案的视图文件夹中动态创建一个文件来编写字符串。我得到如下当前路径并进一步附加到我需要的路径:
string tempPath = Directory.GetCurrentDirectory() + "\\Views\\" + guid + "_" + fileName +
".cshtml";
File.WriteAllText(tempPath, data);
这在本地工作得很好。但不是托管应用程序的位置。我只想在子文件夹 Views 下写入文件,但它没有发生。它无法写入托管应用程序中的文件。
我尝试了其他选项Assembly.GetEntryAssembly().Location
,例如 - 进入 bin/debug --- 不会进入 Views 文件夹。我应该如何解决这个问题以获得所需的路径:
C:\Users\....\Services\A.B.C\A.B.C.API\Views\91c914d6-f551-4eea-97de-d8f842d1692e_File_NAME.cshtml
解决方案
我不确定写入失败时发生了什么。
如果抛出异常,您可能会在消息中得到解释。如果它缺少 NTFS 权限,只需添加它。
如果什么都没发生,继续执行,你可能写错了文件夹:在控制台上显示 Directory.GetCurrentDirectory() 返回的值。如果您无法修改源代码,请使用 procmon(Microsoft sysinternals 工具)之类的工具监视文件,以查看文件的写入位置。
告诉我们更多关于寻求帮助的行为。
推荐阅读
- java - try-catch 块中的递归调用以重试 N 次
- flutter - 无需 video_player 插件即可轻松播放本地视频
- javascript - 使用 CSS 类禁用选择
- python - 如何通过继承向 Pyspark Dataframe 类添加自定义方法
- laravel - Laravel 5.8 上的翻译生产错误
- docker - 如何在不杀死远程进程的情况下退出连接到无头服务器的 dlv
- mysql - 导入我的数据库时出错:第 217004 行的错误 1146 (42S02):表 'caol2.cao_curriculo' 不存在
- python - 如何格式化没有标签的 QRadioButton
- python - Python 棋盘游戏 - “TypeError:列表索引必须是整数或切片,而不是元组”
- linux - 如何在 MacOS Mohave 上启用 declare -A?