[英]System.Drawing support with lambda container images
我試圖使用容器圖像在 lambda function 中添加 System.Drawing 庫。 在此處遵循 AWS 文檔
添加
RUN yum install -y amazon-linux-extras
RUN amazon-linux-extras install epel -y
RUN yum install -y libgdiplus
在Dockerfile
里面。
撥打 lambda 時出現錯誤
System.TypeInitializationException:“Gdip”的類型初始值設定項引發異常。 System.PlatformNotSupportedException:非 Windows 平台不支持 System.Drawing.Common。 有關詳細信息,請參閱https://aka.ms/systemdrawingnonwindows 。
您無需將 package 從 v6.0.0 降級。 在 .NET 6 中,您可以通過將此行添加到啟動代碼中(在調用任何依賴於 GDI 的代碼之前)來解決此問題:
AppContext.SetSwitch("System.Drawing.EnableUnixSupport", true);
但請注意,這不適用於 v7.0.0 及更高版本。 Unix 支持已從 7.0.0-preview.* 版本中刪除。
問題出在我正在使用的System.Drawing.Common package 版本上。 我已將 package 從 6.0.0 降級到 4.7.0,錯誤消失了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.