2017-02-18 52 views
7

我一直致力於VS2017 RC。Visual Studio 2017 RC如何在csproj文件中指定發佈選項

我最終想從ASPNETCORE項目中運行一個反應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文件。

回答

10

你可以參考Project.json to MSBuild conversion guide

腳本:

{ 
    "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:

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

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

我通常用記事本或筆記本++編輯.csporj然後重新打開Visual Studio的2017年:)

相關問題