JetBrains Rider 能否与 IISExpress 一起正常工作?

Dav*_*ith 5 win64 iis-express rider iis-express-10

我使用的 JetBrains Rider 是官方网站上的最新版本,2019.1.2(免费试用 30 天)。不是破解版。

我有一个包含 ASP.NET Web API csproj 的解决方案。该解决方案在 IIS 或 VS + IISExpress 中正常工作。

和 VS 一样,Rider 也在 .idea 文件夹中创建了一些配置文件。在其中,我可以找到 IISExpress 的 applicationhost.config 文件。

问题是 IISExpress 永远无法启动并在我开始在控制台中调试后显示错误:

**Failed to initialize site bindings**
Error initializing ULATQ.  hr = 80070005
Terminating W3_SERVER object
InitComplete event signalled
Process Model Shutdown called
Waiting for all LISTENER_CHANNELS to stop
Unable to start iisexpress.
Run Code Online (Sandbox Code Playgroud)

我检查了 applicationhost.config 文件。它与VS生成的相同。它还有绑定信息行,我确定端口可用:

**Failed to initialize site bindings**
Error initializing ULATQ.  hr = 80070005
Terminating W3_SERVER object
InitComplete event signalled
Process Model Shutdown called
Waiting for all LISTENER_CHANNELS to stop
Unable to start iisexpress.
Run Code Online (Sandbox Code Playgroud)

问题:Rider 真的可以与 IISExpress 一起正常工作吗?知道如何配置它以及应该更改哪些文件吗?

Dav*_*ith 10

我终于发现,在 Windows 10 中,似乎是权限问题导致 Rider 无法正常启动 IISExpress。

解决方案:

  1. 确保以管理员身份运行 JetBrains Rider(对我来说最重要,然后 IISExpress 可以工作!)

  2. 打开解决方案,右键单击将在 IISExpress 上运行的 Web 项目。

  3. 选择Properties并转到该Web部分。

  4. Generate applicationhost.config在第一次运行之前检查。

  5. URL 应该是http://locahost:8080/8080可以是任何端口。尚未支持任何 IP。)

  6. 选中Anonymous authentication以允许查看和调试页面。

  7. Generate applicationhost.config第一次运行后取消勾选。确保 Rider 仍在使用 IISExpress,Propertiesapplicationhost.config.

只有当 Rider 以管理员身份运行并且设置正确时,PropertiesIISExpress 才能正常工作。否则,它不会启动或仅返回 HTTP 5XX/4XX。