我想选择一个本地json
文件,并在我的blazor客户端组件加载它。
<input type="file" onchange="LoadFile" accept="application/json;.json" class="btn btn-primary" />
protected async Task LoadFile(UIChangeEventArgs args)
{
string data = args.Value as string;
}
P,S,我不明白,我需要检索时保持文件和内容的道两者的名字吗?
我想你想阅读客户端(Blazor)在JSON文件的内容,对不对?为什么不能在服务器上!?
总之,args.Value只能提供您与文件的名称。为了读取该文件的内容,你可以使用的FileReader API(在这里看到:https://developer.mozilla.org/en-US/docs/Web/API/FileReader)。这意味着,你应该使用JSIntrop用的FileReader API进行通信。但是在开始之前,我建议你尝试看看这个API已经被社区(有点像本地存储,等等)来实现。您可能还需要反序列化读取的内容到一些有意义的事情,如C#对象。
希望这可以帮助...
有一个工具,可以帮助,但它目前不支持3.0预览。 https://github.com/jburman/W8lessLabs.Blazor.LocalFiles
(与开发商没有隶属关系)