【发布时间】:2020-05-17 14:53:50
【问题描述】:
我正在为 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 进行开发,终端窗口(或任何其他控制台窗口)中没有出现任何内容,包括我的 ProcessForm() 方法开头的日志记录语句。但是,Error: Connection disconnected with error 'Error: Server returned an error on close: Connection closed with an error.' 消息确实出现在浏览器的 JS 控制台上。
我在底层 SignalR 技术中看到了对最大缓冲区长度的引用,但我在旧帖子中看到的用于设置更大缓冲区的方法都没有与配置 Blazor 的新 .MapBlazorHub 方法兼容(无论如何,我希望能够处理任意大量的数据)。
有谁知道在这种情况下如何增加或消除数据大小限制?
【问题讨论】:
标签: signalr blazor blazor-server-side