需要
前几天,马老板给小明和小红一个“待办事项”网站,小明负责后端,小红负责前端,并要求网站能够同时在 Windows、和 Linux 上运行。
小明整顿了一下“待办事项”的性能清单:
- 获取所有待办事项
- 按 ID 获取项
- 增加新项
- 更新现有项
- 删除项
创立 Web 我的项目
- 从“文件”菜单中选择“新建”>“我的项目”。
- 抉择“ASP.NET Core Web 应用程序”模板,再单击“下一步”。
- 将我的项目命名为 App001,而后单击“创立”。
- 在“创立新的 ASP.NET Core Web 应用程序”对话框中,确认抉择“.NET Core”和“ASP.NET Core 3.1”。抉择“API”模板,而后单击“创立”。
测试 API
按 Ctrl+F5 运行利用。Visual Studio 启动浏览器并导航到 https://localhost:<port>/WeatherForecast,其中 <port> 是随机抉择的端口号。
到目前为止,小明曾经胜利创立并运行了一个 WebApi 我的项目。
我的项目构造
从这个图中能够看出 WebApi 我的项目次要由 Program.cs,Startup.cs,appsettings.json,WeatherForecastController.cs 文件组成,那么当初咱们一个一个介绍一下这几个文件次要由什么作用。
Program 类
它是所有.net core 程序的入口,定义了 2 个办法:Main() 和 CreateHostBuilder();
public class Program
{public static void Main(string[] args)
{CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{webBuilder.UseStartup<Startup>();
});
}
代码不简单,创立泛型主机并运行。
Startup 类
次要包含 ConfigureServices 办法以配置利用的服务和 Configure 办法以创立利用的申请解决管道。
// 运行时将调用此办法。应用此办法将服务增加到容器。public void ConfigureServices(IServiceCollection services)
{
}
// 运行时将调用此办法。应用此办法来配置 HTTP 申请管道。public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{}
appsettings.json
appsettings.json 是在 core 中的配置文件,相似与以前 asp.net 中的 web.config
WeatherForecastController.cs
就是一个控制器,就是解决 Web API 申请,派生自 ControllerBase 的控制器类。
[ApiController]
[Route("[controller]")]
public class WeatherForecastController : ControllerBase
公布到 IIS
在 Windows Server 上装置.NET Core Hosting Bundle。
https://dotnet.microsoft.com/…
创立 IIS 站点
- 在 IIS 服务器上,创立一个文件夹以蕴含利用已公布的文件夹和文件。在接下来的步骤中,文件夹门路作为应用程序的物理门路提供给 IIS。
- 在 IIS 管理器中,关上“连贯”面板中的服务器节点。右键单击“站点”文件夹。抉择上下文菜单中的“增加网站”。
- 提供网站名称,并将“物理门路”设置为所创立利用的部署文件夹。提供“绑定”配置,并通过抉择“确定”创立网站。
公布和部署利用
- 将利用公布到一个文件夹。
- 文件夹的内容将挪动到 IIS 站点的文件夹(IIS 管理器中站点的物理门路)。
小结
目前为止,小明创立并运行 WebApi 利用,并理解 WebApi 我的项目构造及各个文件的用处,而后把 WebApi 利用公布到 IIS 并能够在浏览器中拜访它。小明摸了摸润滑的脑袋,打算先喝一杯咖啡让脑袋劳动一下。