【问题标题】:how to host webapplication and webapi in single solution如何在单一解决方案中托管 Web 应用程序和 Web API
【发布时间】:2017-04-03 05:17:03
【问题描述】:

我创建了一个包含两个 web 应用程序项目的解决方案。一个是asp.net mvc,第二个是web api。现在我想发布。请建议我如何发布我的 webapplication 和 webapi

【问题讨论】:

    标签: asp.net-mvc-4 c#-4.0 asp.net-web-api


    【解决方案1】:

    所有mvc页面、web api控制器和aspx页面都可以添加到单个项目中,不需要不同的项目,如果需要分离业务可以使用区域和类库

    【讨论】:

      【解决方案2】:

      流程 1:

      您无需在单个解决方案中为 Web API 和 MVC 应用程序创建单独的项目。您可以创建一个 MVC 应用程序并在 App_Start 文件夹 中添加一个 WebApiConfig.cs(api 路由)文件。为 API 编写 路由,(您只需从 Web API 项目中复制您的路由并粘贴到此处)。现在您可以在必须从 ApiController 继承的 Controller 文件夹中添加/保留所有 Api 控制器。就是这样!

      流程 2:

      但如果您想在单个解决方案中保留单独的项目,

      然后右键单击您的解决方案->单击属性->它将打开属性页面。在这里选择 Multiple Startup projects 单选按钮 -> 然后您可以将 MVC 和 Web API 应用程序设置为 start in action 列 -> 点击 Apply -> Then Ok。

      假设您的域名是 example.com。然后你可以在那里发布你的 MVC 应用程序。并创建一个子域,例如 myapi.example.com,并在那里发布您的 API。然后在 API 项目上启用 CORS。

      我建议使用流程 1。

      如果您想了解更多关于如何从一个解决方案发布两个项目,请查看link

      【讨论】:

      • 但是如何发布和托管我的网络应用程序。
      • 正如我所说,将两个项目放在一个项目中然后发布非常容易。
      • 我已经完成了上面给定的过程。右键单击您的解决方案->单击属性->它将打开属性页面。在这里选择 Multiple Startup projects 单选按钮 -> 然后您可以将 MVC 和 Web API 应用程序设置为 start in action 列 -> 单击 Apply -> Then Ok 然后发布 Web 应用程序。但我有一个问题。在我的 web 应用程序中,我使用 web api url "localhost:51673"。
      • 好的。你能发布吗?
      • 它只显示一个应用程序。但不显示 web api。
      猜你喜欢
      • 2014-02-16
      • 2013-10-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-01
      • 1970-01-01
      相关资源
      最近更新 更多