You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
LaunchUrlStudy/Docs/ASP.NET WebApi 启动项.ipynb

181 lines
4.3 KiB
Plaintext

{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"dotnet_interactive": {
"language": "csharp"
},
"polyglot_notebook": {
"kernelName": "csharp"
}
},
"source": [
"ASP.NET WebApi 启动设置\n",
"======================"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"项目启动,一般分为两种:开发时的调试运行与发布后的正式部署。\n",
"\n",
"项目配置常用的配置:\n",
"1. 系统环境变量\n",
"2. 项目设置:一般保存在 `项目.csproj` 文件\n",
"3. 配置文件:`appsettings.json` `web.config` 及 `Properties/launchSettings.json`\n",
"4. 命令行参数\n",
"5. 程序启动代码:一般放在 `Program.cs` 和 `Startup.cs` 设置\n",
"\n",
"特别注意:本次的重点是 `发布后的正式部署` 的启动项,并且是 `IIS 子程序`的情况API项目一般设置启动项为 在线Swagger文档 `Swagger/index.html`。"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 开发调试时,设置启动项\n",
"暂时省略"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 发布、部署时,设置启动项"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 1、使用`环境变量`"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"启动项的环境变量名与启动参数名相同均为Urls 这适合于一台服务器只有一个WebApi实例时比如Docker下。"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"``` bat\n",
":: cmd 使用 进程内环境变量\n",
"set MyEnv=MyEnvTest\n",
"echo %MyEnv%\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"dotnet_interactive": {
"language": "pwsh"
},
"polyglot_notebook": {
"kernelName": "pwsh"
},
"vscode": {
"languageId": "polyglot-notebook"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"启动地址为: http://localhost:7701\r\n"
]
}
],
"source": [
"# PowerShell 环境变量\n",
"<#\n",
" 1、变量名在Window下不区分大小写在Mac和Linux下区分大小写\n",
" 2、windows中范围有三种系统环境变量、用户环境变量和进程(powershell执行进程)环境变量\n",
" 3、三种使用方法变量语法($Env:name)、环境提供程序和项 cmdlet、.NET System.Environment 类\n",
"#>\n",
"\n",
"$Env:Urls='http://localhost:7701'\n",
"Write-Host \"启动地址为:\"$Env:Urls\n",
"\n",
"# 新窗口启动WebAPI\n",
"Start-Process -FilePath PowerShell.exe -ArgumentList '..\\publish\\DefaultApi\\LaunchUrlStudy.DefaultApi.exe'"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 2、使用启动参数"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"使用`CMD命令`或者`dotnet命令`启动WebAPI时直接使用urls参数是最灵活、方便的方法。"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"```bat\n",
":: 打开cmd窗口中输入以下命令\n",
"start \"Start WebAPI\" /i ..\\publish\\DefaultApi\\LaunchUrlStudy.DefaultApi.exe --urls=http://localhost:7702\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"dotnet_interactive": {
"language": "pwsh"
},
"polyglot_notebook": {
"kernelName": "pwsh"
},
"vscode": {
"languageId": "polyglot-notebook"
}
},
"outputs": [],
"source": [
"# 使用cmd\n",
"Start-Process -FilePath PowerShell -ArgumentList '..\\publish\\DefaultApi\\LaunchUrlStudy.DefaultApi.exe --urls=http://localhost:7703 --launchbrowser=true'"
]
}
],
"metadata": {
"kernelspec": {
"display_name": ".NET (C#)",
"language": "C#",
"name": ".net-csharp"
},
"language_info": {
"name": "python"
},
"polyglot_notebook": {
"kernelInfo": {
"defaultKernelName": "csharp",
"items": [
{
"aliases": [],
"name": "csharp"
}
]
}
}
},
"nbformat": 4,
"nbformat_minor": 2
}