Asp.net core mvc 如何自托管ASP.NET 5 MVC6应用程序
刚刚开始学习ASP.NET5/MVC6 我对在IIS之外作为Windows服务自托管这样一个应用感到好奇。 我应该使用TopShelf吗,就像OWIN/Katana应用程序一样,还是ASP.NET 5通过NuGet软件包提供一些内置的自托管(即服务)选项?您可以使用该库进行自托管。 将依赖项添加到Asp.net core mvc 如何自托管ASP.NET 5 MVC6应用程序,asp.net-core-mvc,Asp.net Core Mvc,刚刚开始学习ASP.NET5/MVC6 我对在IIS之外作为Windows服务自托管这样一个应用感到好奇。 我应该使用TopShelf吗,就像OWIN/Katana应用程序一样,还是ASP.NET 5通过NuGet软件包提供一些内置的自托管(即服务)选项?您可以使用该库进行自托管。 将依赖项添加到project.json文件中的库中: "dependencies": { "EntityFramework.Commands": "7.0.0-rc1-final", // Depen
project.json
文件中的库中:
"dependencies": {
"EntityFramework.Commands": "7.0.0-rc1-final",
// Dependencies deleted for brevity.
"Microsoft.AspNet.Server.Kestrel": "1.0.0-rc1-final"
}
然后为红隼指定以下命令:
"commands": {
"web": "Microsoft.AspNet.Server.Kestrel"
}
您可以通过命令行从MVC项目的文件夹中启动它:
dnx web
请注意,必须先运行
dnvm
。所有ASP.NET核心应用程序都是自托管的
是的,你读对了
public class Program
{
public static void Main(string[] args)
{
var config = new ConfigurationBuilder()
.AddCommandLine(args)
.AddEnvironmentVariables(prefix: "ASPNETCORE_")
.Build();
var host = new WebHostBuilder()
.UseConfiguration(config)
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration() //// Here IIS integration is optional
.UseStartup()
.Build();
host.Run();
}
}
查看更多详细信息。dnx将作为Windows后台服务运行吗?不,它将作为Windows进程运行。因此,一旦启动它的控制台窗口关闭,该进程将终止,还是将继续在后台运行?例如,您可以在Windows Scheduler中指定新任务。然后它将在后台模式下运行。或者使用第三方工具将流程作为服务运行。此示例使用owin并托管在windows服务中-