.NET Core 2 - 将文件夹复制到

Posted

技术标签:

【中文标题】.NET Core 2 - 将文件夹复制到【英文标题】:.NET Core 2 - Copying folder to 【发布时间】:2018-02-03 21:42:03 【问题描述】:

我目前有一个名为“templates”的文件夹,其中包含一组我希望在构建过程中复制的 JSON 文件。 (例如 bin/Debug/../templates/)

使用 .NET Core 2 控制台应用程序,我该如何实现?

【问题讨论】:

【参考方案1】:

如果该文件夹在您的项目文件目录中,请将此 Update 项目语句添加到 csproj:

<ItemGroup>
  <None Update="templates\**" CopyToOutputDirectory="PreserveNewest" />
</ItemGroup>

如果它们在您的项目目录之外,请使用带有 LinkBase 元数据的 Include 项目语句添加它们以指定目标子目录:

<ItemGroup>
  <None Include="..\templates\**" LinkBase="templates" CopyToOutputDirectory="PreserveNewest" />
</ItemGroup>

【讨论】:

【参考方案2】:

将在 2018.1 中修复。我们现在正在准备2018.1的EAP课程=) 更多详情见https://youtrack.jetbrains.com/issue/RIDER-9684

【讨论】:

【参考方案3】:

转到构建事件选项卡上的项目属性添加根据您的需要显示预构建事件或构建后事件的位置添加命令,就像在常规 Windows cmd 中一样。您也可以使用相对路径。

【讨论】:

你有任何关于 .csproj 效果的例子吗?在 Jetbrains Rider 中找不到这些选项。 应尽可能避免使用命令行的构建前/构建后步骤,以确保工作增量构建并能够构建跨平台。例如在 Mac/linux 上不会有 xcopy

以上是关于.NET Core 2 - 将文件夹复制到的主要内容,如果未能解决你的问题,请参考以下文章

使用.net core读取Json文件配置

如何使用 .NET Core 安全地加/解密文件 #yyds干货盘点#

.Net Core Web应用加载读取Json配置文件

Asp.Net Core 中的静态文件

Asp.Net Core 中的静态文件

如何使用 .NET Core 安全地加/解密文件