[当我尝试在Linux控制器上运行c#程序时,出现以下错误:
Process terminated. Couldn't find a valid ICU package installed on the system. Set the configuration flag System.Globalization.Invariant to true if you want to run with no globalization support.
at System.Environment.FailFast(System.String)
at System.Globalization.GlobalizationMode.GetGlobalizationInvariantMode()
at System.Globalization.GlobalizationMode..cctor()
at System.Globalization.CultureData.CreateCultureWithInvariantData()
at System.Globalization.CultureData.get_Invariant()
at System.Globalization.CultureInfo..cctor()
at System.StringComparer..cctor()
at System.StringComparer.get_OrdinalIgnoreCase()
at Microsoft.Data.Sqlite.SqliteConnectionStringBuilder..cctor()
我想安装ICU软件包来摆脱此错误。因此,我从此站点下载了一个软件包:Internationnal Components for Unicode
当我在控制器上安装软件包时,仍然收到消息。有什么适当的方法可以在Linux控制器上安装ICU软件包,以便摆脱此消息?
P.S。 (因为我的代码不允许打开全球化不变性,所以这不是一个选择。)
您可以通过在项目中添加runtimeconfig.template.json
文件来解决此问题:
{
"configProperties" : {
"System.Globalization.Invariant" : true
}
}