【问题标题】:Launch ASP.NET Core Web-API programmatically以编程方式启动 ASP.NET Core Web-API
【发布时间】:2018-11-20 15:45:56
【问题描述】:

如何从 C# 以编程方式启动 ASP.NET Core Web-API?在我单击表单中的按钮后,API 应该会启动。

我已经通过 Add -> Existing Project... 将我的 API 添加到我的解决方案中,但我不知道如何从其他项目启动它。

Web-API 在 .NET Core 2.0 上运行,我想从使用 .NET Framework 4 的项目中启动它

【问题讨论】:

标签: c# asp.net asp.net-core-webapi


【解决方案1】:

您可能正在寻找类似this(link)的东西

dotnet run [-c|--configuration] [-f|--framework] [--force] [--launch-profile] [--no-build] [--no-dependencies]
[--no-launch-profile] [--no-restore] [-p|--project] [--runtime] [[--] [application arguments]]

dotnet 运行 [-h|--help]

【讨论】:

  • 我认为可能有比运行 cmd 命令更优雅的方式。尤其是当 API 也应该以编程方式关闭时。
  • @Felix 如果您使用的是 Windows,您可以将此 Web API 添加到您的 IIS 并在那里启动/停止它。如果没有,我认为在 UNIX/Linux 上也有类似的方法
  • 所有 ASP.NET Core 应用程序本质上只是控制台应用程序。这意味着它们是独立的进程。就像启动 any 进程一样启动进程,即从 shell 运行它。
【解决方案2】:

您也可以尝试以Windows Service 身份运行应用程序,然后单击启动服务。

【讨论】:

    【解决方案3】:

    这是一个示例项目,展示了在 WPF 中托管 ASP.NET Core 应用程序:https://github.com/mkArtakMSFT/Samples/tree/master/WpfAspNetCore

    需要注意的几点:

    • .NET Framework 4.6.1 是可以托管 ASP.NET Core 应用程序的最低版本
    • 此示例是虚拟的,没有太多配置(基于空的 ASP.NET Core Web 应用程序模板内容)。但是,您可以添加对 Microsoft.AspNetCore.Mvc 包的引用以添加对 MVC 的支持。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-01-03
      • 1970-01-01
      • 2017-12-15
      • 2012-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多