我已将VS2019 Blazor模板创建的BlazorApp1应用发布到生产服务器。由于它是一个子网站,因此我做了3处更改:
_Host.cshtml
中的<base href="/BlazorApp1/" >
Startup.cs
中添加了app.UsePathBase("/BlazorApp1")
web.config
中,将hostingModel
更改为outofprocess
,将stdoutLogEnabled
更改为true
导航到该网站时,我几乎总是会收到以下错误:
未处理的异常页面必须重新加载
这显示在浏览器控制台中:(用contoso替换了我的网站)
[2020-06-02T18:39:49.445Z] Information: Normalizing '_blazor' to 'http://www.contoso.com/BlazorApp1/_blazor'. blazor.server.js:1:5212
[2020-06-02T18:39:49.936Z] Information: WebSocket connected to ws://www.contoso.com/BlazorApp1/_blazor?id=5yq6pI_jo1ByPZtskEjjmw. blazor.server.js:1:5212
[2020-06-02T18:39:50.132Z] Error: The circuit failed to initialize. blazor.server.js:15:27309
log http://www.contoso.com/BlazorApp1/_framework/blazor.server.js:15
C http://www.contoso.com/BlazorApp1/_framework/blazor.server.js:8
S http://www.contoso.com/BlazorApp1/_framework/blazor.server.js:8
invokeClientMethod http://www.contoso.com/BlazorApp1/_framework/blazor.server.js:1
invokeClientMethod .../BlazorApp1/_framework/blazor.server.js:1
processIncomingData .../BlazorApp1/_framework/blazor.server.js:1
onreceive .../BlazorApp1/_framework/blazor.server.js:1
onmessage .../BlazorApp1/_framework/blazor.server.js:1
[2020-06-02T18:39:50.141Z] Information: Connection disconnected. blazor.server.js:1:5212
Error: Invocation canceled due to the underlying connection being closed. blazor.server.js:1:20001
关于发生的事情,我找不到其他线索。日志中没有显示异常。
答案 0 :(得分:2)
仅在"true"
标记中使用小写字符即可解决问题:
<base>
答案 1 :(得分:0)
我也曾经遇到过,但是我正确指定了base
标签。在极少数情况下,如果您为其中一个依赖项注入服务定义了不明确的构造函数(如果它们都与所有参数都匹配(可能由于继承而偶然)),则在极少数情况下也可能发生此错误。详细的日志不会指出该问题。请注意,为依赖项注入的服务有目的地创建多个构造函数被视为anti-pattern。