Visual Studio 2017 RC:如何在csproj文件中指定发布选项

9

我一直在使用VS2017 RC。

最终我想要从ASPNETCORE项目中运行一个React SPA项目。为此,我参考了一个带有project.json文件的VS2015模板。

在VS2015的project.json文件中,我有两个通常不会出现在标准ASPNETCORE模板中的项目。

我想要包含的这两个项目如下:

 "publishOptions": {
"include": [
  "wwwroot",
  "web.config"
],
"exclude": [
  "node_modules",
  "**.xproj",
  "**.user",
  "**.vspscc"
  ]
},

  "scripts": {
    "prepublish": [
    "npm install",
    "node node_modules/webpack/bin/webpack.js --config    webpack.config.vendor.js",
    "node node_modules/webpack/bin/webpack.js"
],

我已经找遍了,也不知道在csproj文件中应该在哪里添加它。我尝试修改csproj文件,但这样做后,项目会崩溃,并出现各种错误和警告。
你如何通过VS2017将其添加到项目中?
如果要在项目外修改csproj文件而不使项目崩溃,该怎么办?
1个回答

13

您可以参考Project.json转换为MSBuild指南

脚本:

{
  "scripts": {
    "precompile": "generateCode.cmd",
    "postpublish": [ "obfuscate.cmd", "removeTempFiles.cmd" ]
  }
}

<Target Name="MyPreCompileTarget" BeforeTargets="Build">
  <Exec Command="generateCode.cmd" />
</Target>

<Target Name="MyPostCompileTarget" AfterTargets="Publish">
  <Exec Command="obfuscate.cmd" />
  <Exec Command="removeTempFiles.cmd" />
</Target>

发布选项:

  "publishOptions": {
    "include": [
      "files/",
      "publishnotes.txt"
    ]
  }

<ItemGroup> 
  <Content Include="files\**\*" CopyToPublishDirectory="PreserveNewest" />
  <None Include="publishnotes.txt" CopyToPublishDirectory="Always" />
  <!-- CopyToPublishDirectory = { Always, PreserveNewest, Never } -->
</ItemGroup>

我通常使用记事本或Notepad ++编辑.csporj文件,然后重新打开Visual Studio 2017 :)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接