在Blazor服务器端下载xml文件

时间:2020-07-15 13:53:49

标签: blazor blazor-server-side

enter image description here我有一个blazor服务器应用程序,该应用程序将xml文件生成到特定目录。我在表格上显示文件列表,以使其可下载,但不起作用。

@if (Files != null)
{
    <table class="table">
        <thead>
            <tr>
                <th>Files</th>
                <th> </th>
            </tr>

        </thead>
        <tbody>
            @foreach (var item in Files)
            {
                <tr>
                    <td>@item.Name </td>
                    <td> <a href="@item.FullName" download>Download</a> </td>
                </tr>
            }

        </tbody>
    </table>
}

2 个答案:

答案 0 :(得分:0)

由于没有代码可填充Files变量,因此它将始终为null。您必须在事件处理程序或生命周期事件中执行此操作。

答案 1 :(得分:0)

尝试通过以下函数调用IJSRuntime:

@inject IJSRuntime  js`

@code{
  void Download(string fileName
  await js.InvokeVoidAsync("downloadFile",fileName)
}
_Host.cshtml
function downloadFile(fileName) {
     location.href = fileName;
}