【问题标题】:Localization not working on dotnet6 aspnet alpine docker image本地化不适用于 dotnet6 aspnet alpine docker 图像
【发布时间】:2022-12-03 15:21:46
【问题描述】:

我有一个需要翻译日期的应用程序。使用 VS2022 时,我可以在更改入口参数时在语言之间切换。当我运行包含我的应用程序的 docker 容器时,日期未本地化,默认情况下仅支持英语

这是我的 dockerfile : `

FROM mcr.microsoft.com/dotnet/sdk:6.0-alpine AS publish
WORKDIR /src
COPY myApp/. .
RUN dotnet restore myApp.sln
WORKDIR /src/myApp
RUN dotnet publish -c Release -o /app

FROM mcr.microsoft.com/dotnet/aspnet:6.0-alpine
WORKDIR /app
EXPOSE 80
COPY --from=publish /app .
ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT false
RUN apk add --no-cache icu-libs

ENTRYPOINT ["dotnet", "myApp.dll"]

`

我也尝试过切换 `

RUN apk add --no-cache icu-libs
ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT false

`

执行时 myDate.ToString("dddd dd MMMM yyyy", CultureInfo.GetCultureInfo("fr-FR")),日期以英语而不是法语返回

【问题讨论】:

    标签: c# docker asp.net-core localization


    【解决方案1】:

    事实证明,icu-libs 不再包含所有文化。

    您需要添加: RUN apk add --no-cache icu-data-full

    欲了解更多信息,请看这里:https://github.com/dotnet/dotnet-docker/issues/3844

    【讨论】:

      猜你喜欢
      • 2022-12-03
      • 1970-01-01
      • 1970-01-01
      • 2020-06-19
      • 2020-11-02
      • 1970-01-01
      • 2021-06-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多