小编L. *_*leu的帖子

EPPlus:.Net Core 3.1 Azure 函数中找不到 System.Text.Encoding.CodePages.dll

使用 VS2019 我生成了一个 Azure Function 项目。Azure 函数由 HTTP 请求触发,以使用 EPPlus 将 CSV 内容转换为 XLSX 文件。

代码非常非常简单:

[FunctionName("Function1")]
public static async Task<IActionResult> Run( [HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req, ILogger log)
{
    ExcelPackage.LicenseContext = LicenseContext.NonCommercial;
    // line below will raise "System.Text.Encoding.CodePages.dll" not found exception
    ExcelPackage xcel = new ExcelPackage();
// ... some other code
}
Run Code Online (Sandbox Code Playgroud)

ExcelPackage 实例将引发以下错误:“无法加载文件或程序集 'System.Text.Encoding.CodePages,Version=5.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a'。系统找不到指定的文件。” EPPlus 依赖于 System.Text.Encoding.CodePages 5.0.0.0,但看起来 .Net core 3.1 依赖于 4.x 版本。

我认为并成功测试的解决方法是将 System.Text.Encoding.CodePages.dll 复制到我的解决方案的 bin 文件夹中。但非常不令人满意,因为每次我重建解决方案时,我都必须手动部署System.Text.Encoding.CodePage.dll。

我尝试过关于绑定重定向的不同内容,但没有成功。这并不奇怪,因为绑定重定向更多地与 .net 框架相关。

这让我抓狂。

c# azure epplus .net-core-3.1

6
推荐指数
1
解决办法
6471
查看次数

标签 统计

.net-core-3.1 ×1

azure ×1

c# ×1

epplus ×1