从用户 Blazor web assembly 输入的 xml 文件中读取数据

Reading data from xml file input by user Blazor web assembly

因此,我使用了 <input> 标签并从用户输入了一个 xml 文件。现在我想读取文件的内容。我希望能够将内容保存为 JSON 对象。这将是 IBrowserFile 类型,但我不确定如何使用它来遍历文件并获取数据。如果还有其他方法,请告诉我。 示例 html 写入为:

<input type="file" onchange="@LoadFile" accept=".xml" />

请帮我找到解决办法!

您可以获得一个流:

async Task LoadFile(InputFileChangeEventArgs e)
{
   var stream = e.File.OpenReadStream();
   var doc = await XDocument.LoadAsync(stream, ...);
   // process your data
}

注意微软does not recommend这种in-memory操作,估计你的风险。