【问题标题】:How can I fix below issue when host blazor app to windows server?将 blazor 应用程序托管到 Windows 服务器时,如何解决以下问题?
【发布时间】:2021-03-18 19:42:05
【问题描述】:

当我将我的 blazor 应用程序上传到 Windows 服务器时,出现以下问题。我尝试了不同的解决方案,但未能成功。如果有任何机构遇到同样的问题并且可以对此提供帮助,那将很有帮助。

它在本地运行良好,但是当我发布 blazor.server 应用程序然后上传或托管到服务器时,就会出现此问题。它在 asp.net core 3.1 中。

暴击:Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer[100] 未处理的异常呈现组件:未找到类型 Microsoft.AspNetCore.Components.Authorization.CascadingAuthenticationState 的默认构造函数 System.MissingMethodException:找不到类型 Microsoft.AspNetCore.Components.Authorization.CascadingAuthenticationState 的默认构造函数 在 System.RuntimeType.CreateInstanceMono (System.Boolean nonPublic, System.Boolean wrapExceptions) in :0 在 System.RuntimeType.CreateInstanceSlow (System.Boolean publicOnly, System.Boolean wrapExceptions, System.Boolean skipCheckThis, System.Boolean fillCache) in :0 在 System.RuntimeType.CreateInstanceDefaultCtor (System.Boolean publicOnly, System.Boolean skipCheckThis, System.Boolean fillCache, System.Boolean wrapExceptions, System.Threading.StackCrawlMark& stackMark) in :0 在 System.Activator.CreateInstance(System.Type 类型,System.Boolean nonPublic,System.Boolean wrapExceptions) 在:0 在 System.Activator.CreateInstance (System.Type 类型,System.Boolean nonPublic) 在:0 在 System.Activator.CreateInstance (System.Type 类型) in :0 在 Microsoft.AspNetCore.Components.ComponentFactory.InstantiateComponent (System.IServiceProvider serviceProvider, System.Type componentType) in :0 在 Microsoft.AspNetCore.Components.RenderTree.Renderer.InstantiateComponent (System.Type componentType) in :0 在 Microsoft.AspNetCore.Components.RenderTree.Renderer.InstantiateChildComponentOnFrame (Microsoft.AspNetCore.Components.RenderTree.RenderTreeFrame& 框架,System.Int32 parentComponentId) 在:0 在 Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.InitializeNewComponentFrame (Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder+DiffContext& diffContext, System.Int32 frameIndex) 在 :0 在 Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.InitializeNewSubtree (Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder+DiffContext& diffContext, System.Int32 frameIndex) 在 :0 在 Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.InsertNewFrame (Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder+DiffContext& diffContext, System.Int32 newFrameIndex) in :0 在 Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.AppendDiffEntriesForRange (Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder+DiffContext& diffContext, System.Int32 oldStartIndex, System.Int32 oldEndIndexExcl, System.Int32 newStartIndex, System.Int32 newEndIndexExcl) 在 :0 在 Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.ComputeDiff (Microsoft.AspNetCore.Components.RenderTree.Renderer 渲染器,Microsoft.AspNetCore.Components.Rendering.RenderBatchBuilder batchBuilder,System.Int32 componentId,Microsoft.AspNetCore.Components.RenderTree.ArrayRange@ 987654321@1[T] newTree) 在 :0 在 Microsoft.AspNetCore.Components.Rendering.ComponentState.RenderIntoBatch (Microsoft.AspNetCore.Components.Rendering.RenderBatchBuilder batchBuilder, Microsoft.AspNetCore.Components.RenderFragment renderFragment) in :0 在 Microsoft.AspNetCore.Components.RenderTree.Renderer.RenderInExistingBatch (Microsoft.AspNetCore.Components.Rendering.RenderQueueEntry renderQueueEntry) 在:0 在 Microsoft.AspNetCore.Components.RenderTree.Renderer.ProcessRenderQueue () in :0

【问题讨论】:

  • 您应该在此处包含版本。这还在 Core 3.x 上吗?
  • @HenkHolterman 是的,它在 asp.net core 3.1 中

标签: c# .net asp.net-core blazor


【解决方案1】:

对此不确定,但在我看来,禁用链接器将解决问题...这是一个临时解决方案...有关正确的解决方案,请咨询 Blazor 团队

<PropertyGroup>
    <BlazorWebAssemblyEnableLinking>false</BlazorWebAssemblyEnableLinking>
</PropertyGroup>

【讨论】:

  • 我在项目的任何地方都看不到这个属性?我在哪里可以找到这个?
  • 我添加了这个并且它有效。谢谢。为什么会这样?能否请您提供一些详细信息?
  • @TusharMaru Blazor 尝试通过使用链接器删除它认为未使用的代码来最小化应用程序的大小。它并不总是正确的。见docs.microsoft.com/en-us/aspnet/core/blazor/host-and-deploy/…
猜你喜欢
  • 2023-01-19
  • 2019-11-26
  • 1970-01-01
  • 1970-01-01
  • 2021-08-15
  • 2018-04-01
  • 1970-01-01
  • 2020-09-26
  • 2021-06-26
相关资源
最近更新 更多