Blazor:System.NotSupportedException:找不到编码1252的数据。

3

我正在尝试在按钮单击时使用Aspose创建一个工作簿,但在尝试实例化工作簿时立即遇到错误:

Blazor is running in dev mode without IL stripping. To make the bundle size significantly smaller, publish the application or see https://go.microsoft.com/fwlink/?linkid=870414
blazor.webassembly.js:1 WASM: Hello from C#
blazor.webassembly.js:1 WASM: 
blazor.webassembly.js:1 WASM: Unhandled Exception:
d.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1 WASM: System.NotSupportedException: Encoding 1252 data could not be found. Make sure you have correct international codeset assembly installed and enabled.
d.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1 WASM:   at System.Text.Encoding.GetEncoding (System.Int32 codepage) <0x3538bc0 + 0x00316> in <d9c16b0fee7344919775df5988c885d0>:0 

FetchData.razor:

<button class="btn btn-primary" @onclick="DownloadFile">Download</button>

@code {
    WeatherForecast[] forecasts;

    protected override async Task OnInitializedAsync()
    {
        forecasts = await Http.GetJsonAsync<WeatherForecast[]>("sample-data/weather.json");
    }

    private async void DownloadFile()
    {
        Console.WriteLine("Hello from C#");

        var wb = new Aspose.Cells.Workbook();

        Console.WriteLine("Created Workbook");

        MemoryStream ms = new MemoryStream();
        wb.Save(ms, Aspose.Cells.SaveFormat.Xlsx);
        byte[] bytes = new byte[ms.Length];
        ms.Read(bytes, 0, bytes.Length);

        Console.WriteLine("Buffed Bytes, sending...");

        await JS.InvokeVoidAsync("saveAsFile", "testWorkbook2.xlsx", bytes);
    }
}

Startup.cs

    public class Startup
    {
        public void ConfigureServices(IServiceCollection services)
        {
            System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance);
        }

        public void Configure(IComponentsApplicationBuilder app)
        {
            app.AddComponent<App>("app");
        }
    }

dotnet 版本

λ dotnet --version
3.0.100-preview9-014004

你可以看到,我试图在startup.cs中添加代码页,使用的是System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance);,但很明显它们没有被加载。我在这里做错了什么?
参考:https://github.com/aspnet/Blazor/issues/1338
1个回答

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接