Blazor(服务器端)TextArea 因长字符串而失败

Blazor (Server Side) TextArea Fails With Long-ish Strings

我正在为 ETL 编写 Blazor 服务器端应用程序。我有一个包含 8 个字段的表单,其中一个是使用 <InputTextArea> 创建的文本区域。此字段用于从电子表格、CSV 文件、HTML 表格等中剪切和粘贴数据内容

<EditForm>OnValidSubmit 连接到 .razor 文件的 @code {} 部分中的 ProcessForm() 函数。

只要文本区域中的字符串少于 20,798 个字符,一切正常。但是,当我将 20,798 个或更多字符粘贴到控件中时,提交会暂停(浏览器的内容被禁用),然后消息 An error has occurred. This application may no longer respond until reloaded. Reload" 出现在视口的页脚中。我在 VS Code 中开发,终端 window(或任何其他控制台 window)中没有任何内容,包括我的 ProcessForm() 方法最开始的日志记录语句。但是,消息 Error: Connection disconnected with error 'Error: Server returned an error on close: Connection closed with an error.' 确实出现在浏览器的 JS 控制台上。

我在底层 SignalR 技术中看到了对最大缓冲区长度的引用,但是我在旧帖子中看到的用于设置更大缓冲区的 none 方法似乎与新的 .MapBlazorHub 方法兼容配置 Blazor(无论如何,我希望能够处理任意大量的数据)。

有谁知道在这种情况下如何增加或删除数据大小限制?

我想这就是您所需要的。据我所知,32kb 是默认值。

 services.AddServerSideBlazor().AddHubOptions(
                    options => { options.MaximumReceiveMessageSize = 32; });