【发布时间】:2016-09-01 05:07:37
【问题描述】:
我想在构建后发布我的网站。有没有办法在 asp,net core 的构建后事件中运行 dotnet publish 命令? 这是我的 project.json 文件:
{
"dependencies": {
"Microsoft.NETCore.App": {
"version": "1.0.0",
"type": "platform"
},
"Microsoft.AspNetCore.Mvc": "1.0.0",
"Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0",
"Microsoft.Extensions.Configuration.FileExtensions": "1.0.0",
"Microsoft.Extensions.Configuration.Json": "1.0.0",
"Microsoft.Extensions.Logging": "1.0.0",
"Microsoft.Extensions.Logging.Console": "1.0.0",
"Microsoft.Extensions.Logging.Debug": "1.0.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0",
"Model": "1.0.0-*",
"Microsoft.EntityFrameworkCore.SqlServer": "1.0.0",
"Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final",
"Microsoft.AspNetCore.Identity.EntityFrameworkCore": "1.0.0"
},
"tools": {
"Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final",
"Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final",
"Microsoft.AspNetCore.Razor.Tools": "1.0.0-preview2-final"
},
"frameworks": {
"netcoreapp1.0": {
"imports": [
"dotnet5.6"
]
}
},
"buildOptions": {
"emitEntryPoint": true,
"preserveCompilationContext": true
},
"runtimeOptions": {
"configProperties": {
"System.GC.Server": true
}
},
"publishOptions": {
"include": [
"wwwroot",
"appsettings.json",
"web.config"
]
},
"scripts": {
"prepublish": [
//"bower install"
],
"postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ],
"postbuild": "[call $(ProjectDir)Publish.bat]"
}
}
【问题讨论】:
-
您是否尝试将
dotnet publish作为postcompile脚本运行? -
@Pawel 是的,它不起作用
-
我不知道这到底是什么意思... - 是有错误还是什么? (作为旁注 - 我不太清楚你为什么要在构建上发布......)
-
@Pawel 我测试它:dotnet publish --framework netcoreapp1.0 --output "c:\temp\Api" --configuration 发布但不工作。我也尝试运行 bat 文件但不是再次工作。
-
再次“不工作”非常模糊。是你构建Debug但尝试发布Release还是构建net461并发布netcoreapp1.0?
标签: c# asp.net-core publish build-events