![](/img/trans.png)
[英]How to run .Net MVC in IIS (vs using `dotnet run` for testing locally)
[英]IIS Express vs dotnet run
其实我知道IIS Express是轻量级的开发服务器。 另一方面, “dotnet run”将应用程序作为控制台应用程序运行并将其绑定到随机端口。
但实际的区别是什么? 我可以通过IIS Express
和"dotnet run"
启动大型企业应用程序,这两种情况都可以完美运行。
到目前为止,我看到的所有不同之处在于IIS Express
将图标添加到任务栏,而dotnet run
允许查看控制台输出。 但这些都是细微的差别。 现在 IIS Express 如此普遍的原因应该是一些全球性的。
可以在此处找到一些结构化: ASP.NET Core 启动设置:IIS Express、IIS、Project、Executable 。 但它仍然不能解释差异。
dotnet run
将使用嵌入式 Kestrel 服务器。 IIS Express 将使用 IIS Express 作为反向代理,在后台调用 Kestrel。 在任何一种情况下,服务器都在托管您的应用程序。
您可以通过调整运行配置来切换本地服务器选择。 IIS Express 将使用...IIS Express。 但是,如果您改为选择项目(在屏幕截图的情况下,它的标题为weatherapi
),它将改用 Kestrel。 你会看到一个命令提示符弹出,显示一些基本的配置数据(假设你没有更改默认的日志输出)。 第一次运行时,您可能必须接受/安装 localhost TLS 证书,以免遇到 TLS 错误。
确认您正在使用哪个进程的一种方法是在 powershell 中调用get-process
以及iisexpress
或{nameOfProject}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.